Skip to main content
 首页 » 编程设计

c#之Visual Studio 正则表达式替换重复捕获组

2024年01月01日52tintown

我正在处理一个相当大的项目 (c#),并且从一个地方到另一个地方我都有看起来像这样的片段:

((int)foo).ToString() + "," + ((int)bar).ToString() + "," + ((int)zig).ToString() + ... 

逗号分隔的字符串具有任意长度(平均范围从 1 到 5,但我不确定是否还有更多)。到目前为止,我能够找到我想要使用的所有事件:

\({.+}\).ToString\(\)( *\+ *"," *\+ *\({.+}\).ToString\(\))* 

现在对于每一个事件,我都想用这样的东西替换它:

{ (int)foo, (int)bar, (int)zig , ...} 

手动替换每个事件是不可行的,是否有替换正则表达式可以完成这项工作?

谢谢

请您参考如下方法:

是的,您可以使用正则表达式在 Visual Studio 中进行查找和替换。

简而言之,您需要为标记表达式使用大括号,并使用 \1、\2 等重用它们。