我有一个从后端收到的字符串,如下所示:
Hello wolrd <br> <br> <br> I am <br><br> Uksz <br>.
现在,<br>
的数量永远不会保持不变 - 可以有一个,或者最多为5.我如何只用一个{{1}更改彼此相邻的所有<br>
}?所以上面的例子是:
<br>
答案 0 :(得分:8)
您可以使用此解决方案:
var test = "Hello wolrd <br><br> <br> <br> <br> <br><br> I am <br><br> Uksz <br><br> <br><br> <br> <br> <br><br> <br> <br> <br><br><br>.";
var re = /(\<br\>)(\s*(\<br\>))+/gi;
var result = test.replace(re, "<br>");
console.log(result);
&#13;
答案 1 :(得分:2)
尝试此解决方案: -
var string = "Hello world <br> <br> <br> I am <br><br> Uksz <br>.";
var result = string.replace(/(\<br\>\s*)+(\<br\>)/g, '$2'); // your result string will return Hello world <br> I am <br> Uksz <br>.
console.log(result);
此正则表达式仅删除br标记之间的空格。
答案 2 :(得分:-1)
这应该有效:
var yourString = "Hello wolrd <br> <br> <br> I am <br><br> Uksz <br>.";
var pattern = /(<br>((\s)*(<br>))*)/gi;
console.log(yourString.replace(pattern, "<br>")); // returns "Hello wolrd <br> I am <br> Uksz <br>."
&#13;
注意:这会保留空格(<br>
之前和之后)。