在javascript中用空格替换所有<br/>标签

时间:2016-06-14 14:38:15

标签: javascript regex

遇到非常简单的事情, 如何使用空格正确替换字符串中的所有< br><br>

这是我尝试使用的内容,但我收到了相同的字符串。

var finalStr = replaceAll(replaceAll(scope.ItemsList[i].itemDescr.substring(0, 27), "<", " "), "br>", " ");
function replaceAll(str, find, replace) {
    return str.replace(new RegExp(find, 'g'), replace);
}

1 个答案:

答案 0 :(得分:12)

你可以用这个来实现:

str = str.replace(/<br\s*\/?>/gi,' ');

这将匹配:

  • <br字面匹配字符<br(不区分大小写)
  • \s*匹配任何空格字符[\r\n\t\f ]
    • 量词:*在零和无限次之间,尽可能多次,根据需要回馈[贪婪]
  • \/?字面匹配字符/
    • 量词:?在零到一次之间,尽可能多次,根据需要回馈[贪婪]
  • >字面匹配字符>
  • g修饰符:全局。所有比赛(首场比赛时不返回)
  • i修饰符:不敏感。不区分大小写的匹配(忽略[a-zA-Z]的情况)

SNIPPET BELOW

var str = "This<br />phrase<br>output<BR/>will<Br/>have<BR>0 br";
str = str.replace(/<br\s*\/?>/gi, ' ');
console.log(str)