JS中使⽤replace和replaceAll需注意
replace() ⽅法介绍
⽤于在字符串中⽤⼀些字符替换另⼀些字符,或替换⼀个与正则表达式匹配的⼦串。
语法:place(regexp/substr,replacement)
regexp/substr 必需。规定⼦字符串或要替换的模式的 RegExp 对象。
请注意,如果该值是⼀个字符串,则将它作为要检索的直接量⽂本模式,⽽不是⾸先被转换为 RegExp 对象。
replaceall()replacement 必需。⼀个字符串值。规定了替换⽂本或⽣成替换⽂本的函数。
这个⽅法,只能替换⽬标字符串中第⼀个匹配的字符串。
如果要全部替换的话,JS 没有提供replaceAll这样的⽅法。怎么办呢???
总结⼀下,有以下三种⽅式:
1、 正则表达式 :place(/oldString/g,newString)
g 的意义是:执⾏全局匹配(查所有匹配⽽⾮在到第⼀个匹配后停⽌)。
2、正则表达式 :place(new RegExp(oldString,“gm”),newString)
g 执⾏全局匹配(查所有匹配⽽⾮在到第⼀个匹配后停⽌)。
m 执⾏多⾏匹配。
3、增加String 对象原型⽅法 replaceAll
placeAll =function(s1,s2){
place(new RegExp(s1,"gm"),s2);
}
这个是在使⽤replaceAll的js中添加此段代码即可。
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论