如何使用PHP将围绕单词和句子的uderscores从一大块文本转换为斜体标签。提前谢谢。
所以 -
This is _just_ a test string for the _purposes of this example_.
会变成 -
This is <i>just</i> a test string for the <i>purposes of this example</i>.
答案 0 :(得分:2)
$content = "This is _just_ a test string for the _purposes of this example_.";
preg_match_all("|_(.*)_|U",$content,$rows);
foreach($rows[0] as $key=>$row) {
$content = str_replace($row, "<i>".$rows[1][$key]."</i>", $content);
}
echo $content;
这是只是本示例目的的测试字符串。
答案 1 :(得分:1)
基本上使用正则表达式。请注意,如果下划线出现在其他位置,则可能会产生不良影响。在预先存在的HTML标记和URL中。如果是这样,你也必须尝试使用\ b。
preg_replace('/_(\w[^<>\n]+?\w)_/', '<i>$1</i>', $text);
或者,使用现成的Wiki解析器,如果这是你需要的。
答案 2 :(得分:0)
$html = Markdown("_text_");
。