在前一篇文章中我們給大家介紹了jQuery中replaceall的方法實例,相信小夥伴對replaceall的使用有了進一步的了解,那麼我們今天給大家繼續介紹關於JavaScript實作replaceall全域匹配並替換的實例!
在javascript替換字串使用的是replace函數,但在實際使用過程中卻發現函數只會取代被比對的第一個字符,這就讓人很不爽了,在php語言中,replace可是實現全域匹配並替換的。沒辦法,仔細研究了下,發現還是有其他辦法實現全域匹配並替換的。
(1)其實replace本身也可以實現這種功能的,但要透過正規的形式加個參數g,例如:
str.replace(/www.baidu.com/g,'m.sbmmt.com');
或:
str.replace(new RegExp('www.baidu.com','gm'),'m.sbmmt.com');
將str 字元中的www.baidu.com 全部替換為php.cn
(2)自行擴展js函式庫,自創函數replaceall方法實作全域匹配並替換的功能。如下:
String.prototype.replaceall=function(s1,s2){ return this.replace(new RegExp(s1,"gm"),s2); }
這個其實也是利用了方法一的想法。舉例如下(這裡也實作了同上的功能,只不過相比方法一更為直觀而已):
str.replace('www.baidu.com','m.sbmmt.com');
總結:
本文透過範例為大家介紹了關於JavaScript實作replaceall全域匹配並替換,相信小夥伴對此也是有一定的了解,希望對你的工作有所幫助!
相關推薦:
以上是JavaScript實作replaceall全域匹配並取代的實例的詳細內容。更多資訊請關注PHP中文網其他相關文章!