使用正则表达式在javascript中修剪<br/>标签

时间:2012-04-24 10:20:04

标签: javascript regex trim

我有一个正则表达式,我想修剪&lt; br&gt;变量

str1.replace(/^&lt;br&gt;|&lt;br&gt;$/g,'');

示例我想修剪一个像这样的字符串

var str1 = "<br>hooray!<br>";

我希望它像这样

var str = "hooray!";

但似乎没有工作......

删除第一个和最后一个&lt; br&gt;的正确正则表达式是什么?标记

5 个答案:

答案 0 :(得分:6)

试试这个正则表达式:

str1.replace(/(^<br>|<br>$)/g,"");

演示此fiddle

答案 1 :(得分:1)

试试这个:

var mystring = '<br>hooray!<br>';
var find = "<br>"; 
var regex = new RegExp(find, "g"); 
var result = mystring.replace(regex, "");

以下是fiddle

答案 2 :(得分:0)

我认为br标记通常写为<br/>,因此您可以使用<br[ ]?/>;等正则表达式

如果您要覆盖br标记为<br> </br>的标记,则必须使用<br>[\s\S]*?<br[ ]?/>

编辑问题后

对于像<br>hooray!<br> 这样的输入,您可以只使用<br>并将所有匹配替换为空白

答案 3 :(得分:0)

试试这个:
(?im)(^<br[\s/]*>|<br[\s/]*>$)

JavaScript代码:

result = subject.replace(/(?:(?:^<br[\s\/]*>)|(?:<br[\s\/]*>$))/mg, "");

答案 4 :(得分:0)

这似乎对我有用,并处理破坏标记奇怪编码的情况......

var newData = data.replace(/&lt;br ?\/\>|&lt;br ?\/&rt;|\<br ?\/\>/g, "\n");