我需要替换字符串中的多个字符。 我有一行 - “ 123AB ”
我需要在%D1 处替换 A ,在%D2 处替换 B 。
我该怎么做?可以用 .replace 来完成,如果是这样,怎么做?
答案 0 :(得分:5)
"ABCDEFA".replace(/A/g, "a") // outputs "aBCDEFa"
"ABCDEFB".replace(/B/g, "b") // outputs "AbCDEFb"
所以你可以使用
"123AB".replace(/A/g, "%D1").replace(/B/g, "%D2");
但是,您可以通过传递替换函数而不是字符串来替换
来一次完成"123AB".replace(/A|B/g, function(match) {
var repacements = {A: '%D1', B: '%D2'};
return replacements[match];
})
答案 1 :(得分:2)
这很简单,第一个参数是你要替换的和第二个参数 是你想用它替换它:
var str = "123AB";
str = str.replace( "A", "%D1" ).replace( "B", "%D2");
//str is now "123%D1%D2"
答案 2 :(得分:0)
这应该有效.. str.replace("A",D1)
答案 3 :(得分:-1)
这取代了所有发生的事件
var rep = function (s, search, replacement) {
while(s.indexOf(search) >= 0)
s = s.replace(search, replacement);
return s;
}
var s = rep("123AB", "A", "%D1");