手机
当前位置:查字典教程网 >编程开发 >Javascript教程 >js使用正则实现ReplaceAll全部替换的方法
js使用正则实现ReplaceAll全部替换的方法
摘要:JS字符串有replace()方法。但这个方法只会对匹配到的第一个字串替换。如下例:NewDocumentvarstr="wordwordw...

JS 字符串有replace() 方法。但这个方法只会对匹配到的第一个字串替换。 如下例:

<HTML> <HEAD> <TITLE> New Document </TITLE> </HEAD> <BODY> <script> var str = "wordwordwordword"; var strNew = str.replace("word","Excel"); alert(strNew); </script> </BODY> </HTML>

如果要全部替换的话,JS 没有提供replaceAll这样的方法。使用正则可以达成Replace 的效果:

str.replace(/word/g,"Excel")g 的意义是:执行全局匹配(查找所有匹配而非在找到第一个匹配后停止)。

<HEAD> <TITLE> New Document </TITLE> <script> function replaceAll(str) { if(str!=null) str = str.replace(/word/g,"Excel") return str; } </script> </HEAD> <BODY> <script> var str = "wordwordwordword"; var strNew = str.replace("word","Excel"); strNew = replaceAll(str); alert(strNew); </script> </BODY> </HTML>

以上写法有个类同的写法:

str.replace(new RegExp("word","gm"),"Excel")g 执行全局匹配(查找所有匹配而非在找到第一个匹配后停止)。

m 执行多行匹配。

除此之外,也可以添加 Stirng对象的原型方法:

String.prototype.replaceAll = function(s1,s2){ return this.replace(new RegExp(s1,"gm"),s2); }

这样就可以像使用replace 方法一样使用replaceAll了

str.replaceAll("word","Excel");总结一下, 三种方式

1. str.replace(/oldString/g,newString)

2. str.replace(new RegExp(oldString,"gm"),newString)

3. 增加String 对象原型方法 replaceAll

【js使用正则实现ReplaceAll全部替换的方法】相关文章:

js+cookies实现悬浮购物车的方法

JavaScript实现将UPC转换成ISBN的方法

jQuery实现自动滚动到页面顶端的方法

javascript实现可全选、反选及删除表格的方法

Javascript实现飞动广告效果的方法

Javascript实现div层渐隐效果的方法

js+HTML5实现canvas多种颜色渐变效果的方法

JavaScript实现鼠标拖动效果的方法

JS实现简单路由器功能的方法

js实现字符串转日期格式的方法

精品推荐
分类导航