javascript - 同时替换字符串的多个部分

标签 javascript string replace

假设我有以下代码:

var str = "abcde";
str.replace("a", "ab")
str.replace("b", "c")

str的值从abcdeabbcde再到acccde。我该如何使这两个操作同时发生,以便 str 的值从 abcde 变为 abccde

编辑:我正在谈论与此类似的任何情况,而不仅仅是这个特定情况。

最佳答案

当替换包含这些类型的模式时,首先执行独立的操作,然后执行其他操作,如下所示。

var str = "abcde";
str.replace("b", "c");
str.replace("a", "ab");

或者使用某些 map 替换它们:

var str = "abcde";
var mapObj = {
   a:"ab",
   b:"c"
};
str = str.replace(/a|b/gi, function(matched){
  return mapObj[matched];
});
console.log(str);

输出:

abccde

关于javascript - 同时替换字符串的多个部分,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48697659/

相关文章:

string - 如何从 Go 中的字符串中替换第 n 个字符

php - 将类添加到字符串中的每个 A 标签

javascript - 如何处理原型(prototype)上的 "left"和 "right"键?

javascript - 使用 for 循环和 setInterval 对 Canvas 进行动画处理

javascript - 复选框组高度太小 - 复选框不可见

c - 防止 C 键盘输入中的 ANSI 转义字符

regex - 使用正则表达式在 Notepad++ 中查找并替换更改的日期格式

javascript - 什么是实例?或实例?

r - 迭代字符串 R 的字符

java - 从 Java 中的字符串中修剪空格