温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

js如何全部替代一个子串为另一个子串

发布时间:2021-12-13 18:44:24 来源:亿速云 阅读:197 作者:柒染 栏目:大数据

本篇文章为大家展示了js如何全部替代一个子串为另一个子串,内容简明扼要并且容易理解,绝对能使你眼前一亮,通过这篇文章的详细介绍希望你能有所收获。

如果需要全量替换字符串,可以使用 String.prototype.replace(re, replacer),其中正则表达式需要开启 global flag

const s = 'foo foo foo'
s.replce(/foo/g, 'bar')
 

那如题中,是否可以使用正则表达式来替代子串

答:「不可以,因为使用子串构建正则时,有可能有特殊字符」,如下

> 'hello. helloX hello3 '.replace(new RegExp('hello. ', 'g'), 'A')
< "AAA"
 

而在 javascript 中替换子串只能使用一种巧妙的办法:str.split('foo').join('bar')

> 'hello. hello. hello. '.split('hello. ').join('A')
< "AAA"
 

真是一个巧(笨)妙(拙)的办法啊!!!!!「大概 TC39 也意识到了一个问题,于是出了一个新的 API」,在 ESNext

String.prototype.replaceAll()

'aabbcc'.replaceAll('b', '.'); 
// 'aa..cc'

总结(及直接答案)

两种办法

  • str.split('foo').join('bar')
  • str.replaceAll('foo', 'bar'),在     ESNext 中,目前支持性不好
 

上述内容就是js如何全部替代一个子串为另一个子串,你们学到知识或技能了吗?如果还想学到更多技能或者丰富自己的知识储备,欢迎关注亿速云行业资讯频道。

向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

js
AI