替换字符串里面的所有发现
JavaScript的replace()方法在一个字符串里面查找一个特定值,或者正则表达式,并且返回一个新的字符串,其中找到的被替换了。但是如果一个字符串里面包含重复的词,replace()方法只改变第一个发现的词。
例子
str = "one two three one five nine"; newStr = str.replace('one', 'XXX'); alert(newStr);
允许上面的代码,脚本将返回”XXX two three one five nine”。你可以看到,第一个’one’被’XXX’替换了,而第二个’one’没有动。那么JavaScript如何替换字符串当中所有的发现呢?
使用Split()和join()替换全部发现
可以使用Split() 和join() 函数替换全部的发现。将字符串用指定的词利用split()打断,再用指定的替换词连接起来。
例子
str = "one two three one five nine"; newStr = str.split("one").join("XXX");; alert(newStr);
输出
XXX two three XXX five nine
使用正则表达式RegularExpression
例子
str = "one two three one five nine"; newStr = replaceAll(str,'one','XXX'); alert(newStr); function replaceAll(str, find, replace) { return str.replace(new RegExp(find, 'g'), replace); }