RegExp查找并替换两个单独的定界符之间的所有空格

时间:2019-03-12 10:31:08

标签: javascript regex

我想找到两个单独的定界符之间的所有空白,并进行替换以有效地将其删除。

例如:

{First Value} where {Second Available Value} is greater than {Value}

我希望字符串变为:

{FirstValue} where {SecondAvailableValue} is greater than {Value}

我在regexp上经验很少,但这是我在regex构建器上尝试过的:

/{([^}]*)}/g

这与子字符串(花括号之间的单词)匹配,包括定界符

我如何只匹配花括号内的空格?

1 个答案:

答案 0 :(得分:3)

我们可以尝试使用回调函数对正则表达式进行替换,针对以下模式:

\{.*?\}

也就是说,我们将尝试匹配花括号中包含的每个术语。然后,该回调函数可以删除所有空格。

var input = "{First Value} where {Second Available Value} is greater than {Value}";
console.log(input);
input = input.replace(/\{.*?\}/g, function(match, contents, offset, input_string) {
    return match.replace(/ /g, '');
});

console.log(input);