假设我有以下字符串。
blaah blaah blaah blaah
结果字符串应为:
albbh albbh albbh albbh
在JavaScript中是否有任何内置方法可以在字符串中查找和替换这样的字符?
答案 0 :(得分:5)
您可以这样做:
var str = "blaah blaah blaah blaah";
str = str.replace(/a|b/g, v => {
if(v=="a"){
return "b"
}else{
return "a"
}
});
console.log(str);

您可以找到有关其工作原理的更多详细信息HERE
基本思想是为每个匹配调用该函数,其返回值将是替换字符串。
答案 1 :(得分:1)
您可以对a
或b
进行分组,并使用替换回调来查看您是要替换a
还是b
:
str = str.replace(/(a)|b/g, function(match, a) {
return a? "b": "a";
});
var str = "blaah blaah blaah blaah";
var newStr = str.replace(/(a)|b/g, (_, a) => a? "b": "a");
console.log(str, "becomes", newStr);