有这样一段js代码:
var str = "男的女的老的少的";
alert(str.replace('的',''));
你原来的意思是想将str中的所有“的”替换为空字符串,结果发现上述代码的执行结果是:
var str = "男的女的老的少的";
alert(str.replace('的',''));
alert: 男女的老的少的
也就是说只替换了第一个。遗憾的是JS中并没有你想的replaceAll()这样的方法,实现replaceAll()的解决办法如下:
var str = "男的女的老的少的";
alert(str.replace(new RegExp(/(的)/g),''));
执行结果:
var str = "男的女的老的少的";
alert(str.replace(new RegExp(/(的)/g),''));
alert: 男女老少
以上实现了字符串的全部替换,但这种正则表达式是有局限的,匹配的是一些特定的字符串,如何匹配动态的字符串呢?
var str = "男的女的老的少的";
var replaceStr = "的";
alert(str.replace(new RegExp(replaceStr,'gm'),''));
这样我们就完成了匹配字符串的动态赋值。
另外还有其他的方法实现全部替换:
var str = "男的女的老的少的";
var replaceStr = "的";
alert(str.split(replaceStr).join(''));
参考:
1.http://www.cnblogs.com/shuaisam/archive/2012/04/12/2442741.html;
最新评论
我的是ipv4网络,如何使用直播源啊!
我今天试了,不想啊,我的是新疆昌吉移动的网络。
收不到验证码电报
现在充值29起了