Javascript replace()仅替换第一个匹配

时间:2013-06-18 21:18:16

标签: javascript replace

你好在这里看到jsfiddle:http://jsfiddle.net/moolood/jU9QY/

var toto = 'bien_address_1=&bien_cp_1=&bien_ville_1=';
var tata = toto.replace('&','<br/>');
$('#test').append(tata);

为什么Jquery在我的例子中只发现了一个'&amp;'并替换它?

2 个答案:

答案 0 :(得分:11)

因为这就是replace在JavaScript中的工作方式。如果search参数是一个字符串,则只替换第一个匹配。

要进行全局替换,必须使用带有“global”(g)标志的正则表达式:

var tata = toto.replace(/&/g,'<br/>');

答案 1 :(得分:3)

您编写的代码只会替换first instance of the string.

使用Regex g 将替换字符串的所有实例。

toto.replace(/&/g,'<br/>');