正则表达式匹配一个字面模式,后跟零个或多个字符,再跟另一个字面模式

时间:2019-04-03 21:50:42

标签: regex visual-studio-2015

我正在更新一个使用这种样式Foo( a )调用方法的文件。请注意,参数a周围有多余的空格。我想用更紧凑的Foo(a)代替这种调用样式。如何在文件中找到第一种样式的所有实例,并用第二种样式替换每个实例?我需要一个正则表达式,例如“匹配文字(,后跟零个或多个字符(包括空格),直到您击中)为止”?

我已经尝试过\( .* \),但这是行不通的。有什么建议吗?

我正在使用Visual Studio 2015的搜索和替换功能。

1 个答案:

答案 0 :(得分:2)

您可以使用

\(\s+(.*?)\s+\)

并替换为($1)

详细信息

  • \(-一个(字符
  • \s+-超过1个空格
  • (.*?)-组1(替换模式中的$1表示该值):除换行符以外的任何0+字符都应尽可能少
  • \s+-超过1个空格
  • \)-一个)字符。

请参见regex demoRegulex graph

enter image description here

如果两次之间可以使用任何字符,请使用[\s\S\r]*?代替.*?