我想使用正则表达式替换字符串中的多个字符。我正在尝试交换字母 A 和 T 以及 G 和 C。
function replacer(string) {
return "String " + string + " is " + string.replace(/A|T|G|C/g, "A","T","G","C");
}
我的正则表达式是否正确?
谢谢
最佳答案
我建议将第一个参数是匹配字符的 replace
回调与来自字符 -> 替换的映射结合起来,如下所示:
// Swap A-T and G-C:
function replacer(string) {
const replacements = {'A': 'T', 'T': 'A', 'G': 'C', 'C': 'G'};
return string.replace(/A|T|G|C/g, char => replacements[char]);
}
// Example:
let string = 'ATGCCTCG';
console.log('String ' + string + ' is ' + replacer(string));
关于javascript - 用正则表达式 JS 替换字符串中的字符,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44207123/