替换字符串中的所有出现-使用jQuery

9

我有一串数据...

This is a template body for  &lt&ltApproved&gt&gt &lt&ltSubmitted&gt&gt

我希望将"&lt"替换为"<<",将"&gt"替换为">>"。要替换"&lt",我编写了以下代码...
 var body = $('#txtHSliderl').val().replace("&lt", "<<");

但它似乎只替换第一次出现的情况...
This is a template body for  <<&ltApproved&gt&gt &lt&ltSubmitted&gt&gt

我应该如何替换所有实例?


你是在生成那些 &lt&gt 吗? - Alexander
3个回答

9
var body = $('#txtHSliderl').val().replace(/&lt/g, "<<");

1
全局的,它意味着它将匹配正则表达式多次而不仅仅是第一次出现。 - jefffan24

3

您需要使用正则表达式来指定全局(g)标志:

 var body = $('#txtHSliderl').val().replace(/&lt/g, "<<");

1

只需像下面这样使用 g

 var body = $('#txtHSliderl').val().replace(/&lt/g, "<<").replace(/&gt/g, ">>");

如果您想在值中替换为 &lt 和 &gt,那么您必须应用两次方法。

g 在此函数中使用,即替换所有给定字符串实例的出现。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接