我得到一些"不洁"的html字符串,我需要清理.
我想用2个html换行符连续替换"2个以上"的html换行符.
所以以下字符串:
$string = 'ytefey soeije hesouhodeseojedowe<br><br>
<br>ioueshe oiwj<br /><br />oijeewje<br /><br> <br> <br>';
Run Code Online (Sandbox Code Playgroud)
应该结束这样的事情:
$string = 'ytefey soeije hesouhodeseojedowe<br><br>
ioueshe oiwj<br /><br />oijeewje<br><br> ';
Run Code Online (Sandbox Code Playgroud)
到目前为止我得到了这个:
$string = preg_replace('#(<br>|<br />){2,}#i', '<br><br>', $string);
Run Code Online (Sandbox Code Playgroud)
但它并没有考虑到线路和空间.
您可以使用preg_replace()简单的正则表达式:
/(<br>\s*|<br \/>\s*){3,}/i
Run Code Online (Sandbox Code Playgroud)
基本上它匹配<br>或<br />((<br>|<br \/>))与它们前面的零个或多个空格(\s*)至少3次或更多次({3,}).
$string = preg_replace("/(<br>\s*|<br \/>\s*){3,}/i", "<br><br>", $string);
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
554 次 |
| 最近记录: |