我想在文本<br>
中用单个标签替换多个标签。<br>
我的文字喜欢,
<p>fhgfhgfhgfh</p>
<br><br>
<p>ghgfhfgh</p>
<br><br>
<p>fghfghfgh</p>
<br><br>
<p>fghfghfgh</p>
<br><br>
<p>fghfgh</p>
<br><br>
<br>
我如何用单个替换多个<br>
?
我想在文本<br>
中用单个标签替换多个标签。<br>
我的文字喜欢,
<p>fhgfhgfhgfh</p>
<br><br>
<p>ghgfhfgh</p>
<br><br>
<p>fghfghfgh</p>
<br><br>
<p>fghfghfgh</p>
<br><br>
<p>fghfgh</p>
<br><br>
<br>
我如何用单个替换多个<br>
?
试试这个
var str="<p>fhgfhgfhgfh</p><br><br><p>ghgfhfgh</p><br><br><p>";
var n=str.replace(/<br><br>/g,"<br>");
console.log(n);
工作演示
编辑:上面适用于 2 个br
标签,下面的代码应该处理任意数量的br标签。
var n = str.replace(/(<br>)+/g, '<br>');
工作演示
where/.../
表示正则表达式,(<br>)
表示<br>
标记,+
表示前一个表达式的一次或多次出现,finallyg
用于全局替换。
这应该可以解决问题:
str.replace(/(?:<br>){2,}/g, '<br>')
或者,如果它们可以在不同的行:
str.replace(/(?:<br>\s*){2,}/g, '<br>')