我正在尝试搜索两个字符:1。', '
和2. '('
。因此,如果找到逗号和空格,则只用逗号代替,如果找到(替换为空格。
以下是我的内容,我知道我可以做两次替换,但是正在考虑使用可能的群组合成一个......就像$1 ='' $2 = ','
一样?
str.replace(/(\()|(,\s)/g, '');
答案 0 :(得分:0)
您可以使用捕获的组和反向引用:
str = str.replace(/(,) |\(/g, '$1');
代码示例:
var str = 'abc, 123( something.'
console.log(str.replace(/(,) |\(/g, '$1'))
//=> "abc,123 something."

答案 1 :(得分:0)
replace
函数接受函数作为第二个参数。您可以使用它将任何匹配替换为您想要的任何匹配。函数的第一个参数是匹配的字符串。
查看更多详情here.
答案 2 :(得分:0)
两个步骤:
替换','到','
const regex = /(\,\s)/gm;
const str = `abc, 123( something.`;
const subst = `,`;
// The substituted value will be contained in the result variable
const result = str.replace(regex, subst);
console.log('Substitution result: ', result);
替换')'到'
const regex = /(\()/gm;
const str = `abc, 123( something.`;
const subst = ``;
// The substituted value will be contained in the result variable
const result = str.replace(regex, subst);
console.log('Substitution result: ', result);
混合解决方案:
regex = /(\,\s)/gm;
str = `abc, 123( something.`;
subst = `,`;
// The substituted value will be contained in the result variable
result = str.replace(regex, subst);
regex = /(\()/gm;
str = result;
subst = ``;
// The substituted value will be contained in the result variable
result = str.replace(regex, subst);
//
console.log(result);

如果我帮助你,请记得将我标记为问题的答案