博客列表 >JS中字符串替换方法之替换所有匹配的子串

JS中字符串替换方法之替换所有匹配的子串

李波的博客
李波的博客原创
2017年12月16日 22:46:401425浏览

JS中字符串替换方法(replace())只替换发现的第一个子串的问题,我今天做作业的时候去查了下手册,原因是:

replace()基本语法: stringObject.replace(regexp/substr,replacement)

replace()详细使用方法请参考:http://www.w3school.com.cn/jsref/jsref_replace.asp

朱老师上课教给我们用的是substr参数,只能替换发现的第一个子串。若想全部替换,就要用到正则匹配模式,并加g这个全局修饰符。另外因为我们的子串是取自数组中,所以正则表达式不适合用“直接量语法”,而适合用“创建RegExp对象”语法。源代码修改如下:

for(var i=0;i<len;i++){

            // dealedStr=dealedStr.replace(words_list[i],'***');  //不文明语言替换,只能替换匹配到的第一个子串

            dealedStr=dealedStr.replace( new RegExp(words_list[i],'g') ,'***');  //不文明语言替换,'g'代表全局匹配,可替换所有匹配的子串

        }


声明:本文内容转载自脚本之家,由网友自发贡献,版权归原作者所有,如您发现涉嫌抄袭侵权,请联系admin@php.cn 核实处理。
全部评论
文明上网理性发言,请遵守新闻评论服务协议