国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > JavaScript > 正文

js使用正則實現ReplaceAll全部替換的方法

2019-11-20 14:14:51
字體:
來源:轉載
供稿:網友

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

PS:關于正則,本站還提供了2款非常簡便實用的正則表達式工具供大家使用:

JavaScript正則表達式在線測試工具:
http://tools.VeVB.COm/regex/javascript

正則表達式在線生成工具:
http://tools.VeVB.COm/regex/create_reg

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 庆城县| 南川市| 阳城县| 靖西县| 礼泉县| 炎陵县| 大港区| 雅江县| 陇南市| 会理县| 萨嘎县| 呈贡县| 西丰县| 松原市| 女性| 东安县| 临海市| 博客| 增城市| 锡林郭勒盟| 双江| 霍林郭勒市| 贵港市| 兴化市| 于都县| 万山特区| 六安市| 安乡县| 修武县| 友谊县| 手游| 遵义市| 阿拉善左旗| 平定县| 曲阳县| 鞍山市| 乐陵市| 健康| 江油市| 江口县| 龙岩市|