数据类型_string_replace方法

replace()
  • 作用:在字符串中用一些字符替换另一些字符,或替换一个与正则表达式匹配的子串;

  • 语法

    • str.replace(value,replaceValue)
      
      • value若是字符串 或 正则表达式(不带g), replace方法仅替换第一个匹配子串(被替换字符);
      • value若是正则表达式(带g), replace() 方法将替换所有匹配的子串(替换字符)
      • 不改变原有字符串!
  • 示例1 -> replace方法不会改变原字符串

    let str = 'abcdefghabcdefgh'
    const restr = str.replace('a', '1')
    console.log(str) // 不改变原字符 -> 'abcdefghabcdefgh'
    
  • 示例2 -> 若是被替换字符为一个字符串 则 仅替换第一个匹配子串

    let str = 'abcdefghabcdefgh'
    const restr = str.replace('a', '1')
    console.log(str) // 'abcdefghabcdefgh'
    console.log(restr) // '1bcdefghabcdefgh'
    
  • 示例3 -> 若是被替换字符为一个正则表达式且带g(g表示全局匹配) 则 替换全部匹配子串

    let str = 'abcdefghabcdefgh'
    const restr = str.replace(/a/g, '1')
    console.log(str) // 'abcdefghabcdefgh'
    console.log(restr) // '1bcdefgh1bcdefgh'
    
  • 示例4 -> 若是被替换字符为一个正则表达式不带g,与字符串相同仅替换第一个匹配子串

    let str = 'abcdefghabcdefgh'
    const restr = str.replace(/a/, '1')
    console.log(str) // 'abcdefghabcdefgh'
    console.log(restr) // '1bcdefghabcdefgh'
    
repaceAll()
  • repaceAll是es6新增的遍历字符串的方法

  • 作用:在字符串中用一些字符替换另一些字符,或替换一个与正则表达式匹配的子串;

  • 语法

    • str.replace(value,replaceValue)
      
    • value若是字符串, 会被转化为正则表达式(带g)

    • value若是正则表达式,则必须带g,不然会报错;

  • 示例1 ->value为字符串

    let str = 'abcdefghabcdefgh'
    const restr = str.replaceAll('a', '1') // 'a'会被转化为/a/g
    console.log(restr) // '1bcdefgh1bcdefgh'
    
  • 示例2 -> value为正则表达式

    let str = 'abcdefghabcdefgh'
    const restr = str.replaceAll(/a/, '1') //error tring.prototype.replaceAll called with a non-global RegExp argument
    
    let str = 'abcdefghabcdefgh'
    const restr = str.replaceAll(/a/g, '1')
    console.log(restr) // '1bcdefghabcdefgh'
    
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值