js字符串替换(replace)

Posted LoveTomato

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了js字符串替换(replace)相关的知识,希望对你有一定的参考价值。

记录一个开发中所犯的错误。

  1. 需求:用js将字符串中的某些子字符串替换为指定的新字符串
  2. 实现思路:印象中js字符串替换有replace方法,replace方法接收两个参数,第一个为要替换的子字符串或正则匹配模式,第二个参数为新字符串。自己对正则不熟,认为用字符串能满足需求。
    简单测试

    var str="apples are round";
    var newStr = str.replace(‘apples‘,‘oranges‘)
    //newStr 值为:oranges are round
  3. 运行结果正确,到项目中错了,错误原因:当replace方法的第一个参数为字符串时,仅仅是第一个匹配会被替换。
    再次测试

    var str1="apples are round, and apples are juicy.";
    var newStr1 = str1.replace(‘apples‘,‘oranges‘);
    //newStr1 值为:oranges are round, and apples are juicy.
  4. 运行结果与期望不符,只被替换一个。
  5. 解决:还需要使用正则表达式:正则表达式包含有全局替换(g)和忽略大小写(i)的选项。

    var str2="apples are round, and apples are juicy.";
    var newStr2 = str2.replace(/apples/g,‘oranges‘);
    //newStr2 值为:oranges are round, and oranges are juicy.




以上是关于js字符串替换(replace)的主要内容,如果未能解决你的问题,请参考以下文章

js的replace如何全部替换目标字符串

js replace 全局替换

JS replace()方法替换变量(可以对变量进行全文替换)

js中怎么用replace替换字符串中的问号

使用 replace() 时片段未替换

js的replace如何全部替换目标字符串