有没有办法在js中更改子字符串



我有一个字符串,比如:

def definition():

我想改变单词def(例如),单词def的每个实例,但不是";def";s是其他单词的一部分像这个

console.log("def definition():".specialReplace("def", "abc"));

结果应该是

abc definition():

不是

abc abcinition():

String#replaceString#replaceAll与正则表达式一起使用:

const specialReplace = (str) => str.replaceAll(/bdefb/g, 'abc')
console.log(specialReplace("def definition")) // abc definition
console.log(specialReplace("def definition def")) // abc definition abc

在正则表达式中,b是一个边界类型断言,它匹配任何单词边界,例如字母和空格之间的边界。

注意,在字符类正则表达式位置([b])内也使用相同的序列b,以匹配退格字符。

最新更新