在很多项目中,我们经常需要使用JS,在页面前面对前台的某些元素做做修改,js 的replace()方法就必不可少。
经常使用"ABCABCabc".replace("A","B")的同学应该会比较清楚,改语句的最终结果是BBCABC,这种方法只能替换
第一个匹配的元素。如果替换所有呢?使用正则表达式即可:
"ABCABCabc".replace(/A/g,"B") 即可。
那如果想替换A的同时也可以替换a呢?
那你可以使用"ABCABCabc".replace(/a/ig,"B");
Flag: i标识ignore忽略大小,g标识global 反复检索,m标识多行检索(这个暂时没试验)
也可以使用它们的组合,比如上面用到的ig就标识替换所有,并且忽略大小写。
正规的正则写法:
var reg=new RegExp(/patten/flag)
var strs="".match(reg);
当flag用了g后,strs返回的就是字符串数组。
如果想要多个字符串中的任意一个相匹配,则可以使用
reg=new RegExp(/abc|xyz/ig);