Php 多次匹配正则表达式模式
我正在尝试编写一个正则表达式,它将在2到无限次之间匹配给定的模式。实际上,我只是尝试将多个换行符合并到一个换行符中,如果有的话 样本输入:Php 多次匹配正则表达式模式,php,regex,Php,Regex,我正在尝试编写一个正则表达式,它将在2到无限次之间匹配给定的模式。实际上,我只是尝试将多个换行符合并到一个换行符中,如果有的话 样本输入: <br><br> <br> ABC <br> <br> 基础知识 预期产出: <br> ABC <br> 基础知识 如果正则表达式是在上述输出上运行的,那么我希望看到完全相同的输出 标记之间可能存在任意数量的空白 我所尝试的: $html=preg_rep
<br><br>
<br>
ABC
<br>
<br>
基础知识
预期产出:
<br>
ABC
<br>
基础知识
如果正则表达式是在上述输出上运行的,那么我希望看到完全相同的输出
标记之间可能存在任意数量的空白
我所尝试的:
$html=preg_replace('/(?:
\s?{2,}/s',null,$html);
只需查找后跟可选空格字符的
2次或更多次,并替换为
:
$html = preg_replace('/(<br>\s*){2,}/', '<br>', $html);
$html=preg_replace('/(
\s*){2,}/','
',$html);
您可以替换为<代码>“BR>\n”/代码>如果您不必为Windows创建的文件烦恼(用行终止符<代码> \r\n>代码>),考虑用“代码”> \n>代码>或<代码> /\n((=\n)/<代码> >用空字符串(用多行标记集)替换<代码> /\n 2、}/<代码>的匹配项。