删除方括号之间和之后的空格。

能写成一行吗(现在我有两行)?

function removeSpaceAfterBeforeBrackets(str) {
    str = str.replace(/\s*\(\s*/gi, "(");
    str = str.replace(/\s*\)\s*/gi, ")");
    return str;
}

最佳答案

您可以使用组中的or或([()])捕获括号和括号本身之前和之后的空白,并在替换中仅使用捕获的括号。

在此示例中,将是组2 $2



function removeSpaceAfterBeforeBrackets(str) {
  return str.replace(/(\s*)([()])(\s*)/gi, "$2");
}
console.log(removeSpaceAfterBeforeBrackets("adfdfdf ( fdf ) ljlkjljk"));
console.log(removeSpaceAfterBeforeBrackets("adfdfdf ( fdf ) ljlkjlj( (  (()) )  ))) (( (k"));

关于javascript - 在一个正则表达式(javascript)中删除括号之间和之后的空格,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/48338559/

10-12 00:44
查看更多