萬盛學電腦網

 萬盛學電腦網 >> 腳本專題 >> javascript >> javascript實現全局匹配並替換的方法

javascript實現全局匹配並替換的方法

   javascript實現全局匹配並替換的方法

        這篇文章主要介紹了javascript實現全局匹配並替換的方法的總結,十分的簡單實用,有需要的小伙伴可以參考下。

  在javascript替換字符串使用的是replace函數,但在實際使用過程中卻發現該函數只會替換被匹配的第一個字符,這就讓人很不爽了,在php語言中,replace可是實現全局匹配並替換的。沒辦法,仔細研究了下,發現還是有其他辦法實現全局匹配並替換的。

  (1)其實replace本身也可以實現這種功能的,但要通過正則的形式加個參數g,例如:

  代碼如下:

  str.replace(/www.baidu.com/g,'www.jb51.net');

  或者:

  代碼如下:

  str.replace(new RegExp('www.baidu.com','gm'),'www.jb51.net');

  將 str 字符中的 www.baidu.com 全部替換為 www.jb51.net

  (2)自己擴展js函數庫,自創函數replaceall方法實現全局匹配並替換的功能。如下:

  代碼如下:

  String.prototype.replaceall=function(s1,s2){

  return this.replace(new RegExp(s1,"gm"),s2);

  }

  這個其實也是利用了方法一的思想。舉例如下(這裡也實現了同上的功能,只不過相比方法一更為直觀而已):

  代碼如下:

  str.replace('www.baidu.com','www.jb51.net');

  以上所述就是本文的全部內容了,希望大家能夠喜歡。

copyright © 萬盛學電腦網 all rights reserved