我得到一些需要清理的“不干净”的html字符串。
我想用2个html换行符替换“超过2个” html换行符。
所以下面的字符串:
$string = 'ytefey soeije hesouhodeseojedowe<br><br>
<br>ioueshe oiwj<br /><br />oijeewje<br /><br> <br> <br>';
应该以如下形式结束:
$string = 'ytefey soeije hesouhodeseojedowe<br><br>
ioueshe oiwj<br /><br />oijeewje<br><br> ';
到目前为止,我得到了:
$string = preg_replace('#(<br>|<br />){2,}#i', '<br><br>', $string);
但这并没有考虑换行和空格。
您可以使用preg_replace()
简单的正则表达式:
/(<br>\s*|<br \/>\s*){3,}/i
基本上,它要么匹配<br>
或<br />
((<br>|<br \/>)
)具有零个或多个间隙,它们(前面\s*
)至少3次或更多次({3,}
)。
$string = preg_replace("/(<br>\s*|<br \/>\s*){3,}/i", "<br><br>", $string);
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句