JavaScript 替换所有匹配内容

Posted Javascript 拾萃

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了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)

     

以上是关于JavaScript 替换所有匹配内容的主要内容,如果未能解决你的问题,请参考以下文章

在活动中添加/替换后,片段的所有元素都为空

正则表达式替换以匹配包括尖括号在内的所有内容[重复]

[ jquery 文档处理 insertBefore(content) before(content|fn) ] 此方法用于把所有匹配的元素插入到另一个指定的元素元素集合的前面,实现外部插入(代码片段

如何在 JavaScript 字符串替换中否定匹配正则表达式? [复制]

RegEx(在 JavaScript 中查找/替换) - 匹配非字母数字字符但忽略 - 和 +

re.sub 替换为匹配的内容