我试图使用正则表达式在 Visual Studio 中的搜索窗口中查找我的 c# 类似复制构造函数的构造函数的所有出现。
例如,我想找到以下内容:
MyClass(MyClass other)
我使用了以下正则表达式,但它没有给出任何结果(它应该):
(?<cn>\w)\(?<cn> \w\)
请问我做错了什么?
非常感谢。
我试图使用正则表达式在 Visual Studio 中的搜索窗口中查找我的 c# 类似复制构造函数的构造函数的所有出现。
例如,我想找到以下内容:
MyClass(MyClass other)
我使用了以下正则表达式,但它没有给出任何结果(它应该):
(?<cn>\w)\(?<cn> \w\)
请问我做错了什么?
非常感谢。
根据您的回答,我可以成功地为 Visual Studio 构建正确的 RegEx:
(?<cpy>\b\w+\b)\s*\(\s*\k<cpy>\s+\w+\s*\)
(public|static|private|internal|protected|protected\s+internal)\s+\w+\s*\(\s*\w+\s+\w+\s*(\s*,\s*\s*\w+\s+\w+\s*)*\)
找到所有的ctors
我不知道这是否适用于 Visual Studio,但您可以在正则表达式的其余部分将 MyClass 的第一个匹配项用作 \1:
(\w+)\s*\(\1\s*\w+\)