1
PHP:我该如何替换替换为“”的HTML标签?PHP:如何将html标签替换为“”?
用下面的代码:
$str = 'line1<div>line2</div>line3';
echo strip_tags($str);
我得到
line1line2line3
但预期的结果是
line1 line2 line3
感谢
PHP:我该如何替换替换为“”的HTML标签?PHP:如何将html标签替换为“”?
用下面的代码:
$str = 'line1<div>line2</div>line3';
echo strip_tags($str);
我得到
line1line2line3
但预期的结果是
line1 line2 line3
感谢
$result = preg_replace('/<.+>/U', ' ', $str);
$rxtags = '
<(?:
(?: (?: (?:script|style) \s* | (?:script|style) \s+ (?:".*?"|\'.*?\'|[^>]*?)+\s*) > .*? </(?:script|style)\s*)
| (?: /?\w+\s*/? | \w+\s+ (?:".*?"|\'.*?\'|[^>]*?)+\s*/? | !(?:DOCTYPE.*?|--.*?--))
)>
';
$html = 'line1<div>line2</div>line3';
$html =~ s/$rxtags/ /xsg;
print $html,"\n";
输出:line1 line2 line3
替换`”“`,一个单一的空间。如果OP想要保留`<>``,你可能想要使用`+`量词而不是`*`量词。 – BoltClock 2011-01-27 14:12:08
根据评论+问题修订修改了regexp。谢谢:) – Merijn 2011-01-27 14:14:37