JavaScript 替換全部匹配內容

  • 因爲JavaScript 的 replace 只能替換一次,所以另外編寫一個能現替換所有匹配內容方法,代碼以下:
    /*
    把 content 中全部的 searchValue 替換爲 replaceValue
    */ 
     function replaceAll(content,searchValue,replaceValue){
          while (content.indexOf(searchValue)>-1) {
            content = content.replace(searchValue,replaceValue);
          }
          return content;
        }
  • 爲何不使用正側表達式來替換?
    • 由於實際操做中發現 searchValue 的內容太大的時候使用正側表達式替換會出錯
    • 個人場景是把 html 頁面 img 中的base64 xxx1,base64 xxx2 圖片內容替換爲 [image1][image2] 這樣的佔位符時,若是使用正則表達式就出錯
  • 附上通常狀況下使用正側表達式的替換方法
    content.replace(new RegExp(searchValue,'g'),replaceValue)
相關文章
相關標籤/搜索