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.

原文地址:https://www.cnblogs.com/LoveTomato/p/8550352.html

时间: 2024-08-05 10:25:10

js字符串替换(replace)的相关文章

C#自定义字符串替换Replace方法实例

本文实例讲述了C#自定义字符串替换Replace方法.分享给大家供大家参考.具体实现方法如下: 一.问题: 前一阵遇到一个如标题的算法题,是将原有字符串的某些片段替换成指定的新字符串片段,例如将源字符串:abcdeabcdfbcdefg中的cde替换成12345,得到结果字符串:ab12345abcdfb12345fg,即:abcdeabcdfbcdefg -> ab12345abcdfb12345fg. 二.实现方法: 显然不能用string.Replace方法,需要自定义一个方法 strin

js 字符串的replace() 方法和实现replaceAll() 方法

一.js中字符串的替换使用replace() 方法,但它只替换第一个匹配子串.如下例: <script type="text/javascript"> var sourceString = "我是被替换的字符串,是被替换的哦"; var replaceString = sourceString.replace("替换", "replace"); alert(replaceString); // 我是被replace

Python3字符串替换replace(),translate(),re.sub()

Python3的字符串替换,这里总结了三个函数,replace()和translate()和re.sub() replace() replace() 方法把字符串中的 old(旧字符串) 替换成 new(新字符串),如果指定第三个参数max,则替换不超过 max 次 str.replace(old, new[, max]) a = 'Hello,world. ByeBye!' print(a.replace('l','Q')) print(a.replace('abcdefghi','01234

jq文档加载完,调用的函数,js字符串替换

jQuery 事件 - ready() 方法 当 DOM(文档对象模型) 已经加载,并且页面(包括图像)已经完全呈现时,会发生 ready 事件.ready() 函数仅能用于当前文档,因此无需选择器. JavaScript replace() 方法 replace() 方法用于在字符串中用一些字符替换另一些字符,或替换一个与正则表达式匹配的子串.               

C#自定义字符串替换Replace方法

前一阵遇到一个如标题的算法题,是将原有字符串的某些片段替换成指定的新字符串片段,例如将源字符串:abcdeabcdfbcdefg中的cde替换成12345,得到结果字符串:ab12345abcdfb12345fg,即:abcdeabcdfbcdefg -> ab12345abcdfb12345fg. 显然不能用string.Replace方法,需要自定义一个方法 string Replace(string originalString, string strToBeReplaced, strin

js正则替换replace

content = "<p><strong>发斯蒂芬斯</strong>蒂芬434324</p><p><strong>范德萨发</strong>的发斯蒂芬</p><p><strong>242<b>3423</b>423</strong></p>"; console.log(content); var pattern =

js字符串替换

<script language="javascript">var r= "1\n2\n3\n";//将字母\n替换成分号alert(r.replace("\n",";")); 结果:1;2\n3\n 只替换了第一个</script> <script language="javascript">var r= "1\n2\n3\n";//将字母\n替换成

JS字符串去替换元素再转换成数组

原创:转载需注明原创地址 https://www.cnblogs.com/fanerwei222/p/11648074.html JS字符串替换不必要的元素, 然后去除多余的空格, 转换成数组: var padding = '1px 2px 3px 4px'; //去除所有的px,如果不加/g那么只会去除第一个px var paddingNew = padding.replace(/px/g, ""); var strArr = new Array(); //将一个或多个空格转换成一个

项目--js中替换目标字符串指定的所有字符

js提供的字符串替换函数replace可以将字符串中符合条件的字符串替换成目标字符串.但是一般使用字符串进行查找替换只能替换第一个符合条件的结果.如var str = 大家都是男人吗,难道不是吗!;str = str.replace('吗', '嘛');alert(str);var str = 大家都是男人吗,难道不是吗!;str = str.replace('吗', '嘛');alert(str);上述代码中只有第一个吗被替换,输出结果是大家都是男人嘛,难道不是吗! ,嘿嘿如果想全部替换字符串