Visual Studio正则表达式,用于查找已注释的代码块

时间:2009-10-14 13:31:49

标签: visual-studio regex

我开始研究大型Visual Studio解决方案,并且遇到了具有大量注释掉代码的区域。这些块的长度通常超过3行,并且都以//开头(可能是Ctrl + K,C用于对这些内容进行注释)。我想尝试找出我的解决方案中存在的所有位置,以便我们的团队可以解决这些问题,并在不再需要它们时将其删除(毕竟,我们正在使用正确的源代码控制,并且可以随时返回历史看旧代码!)。

所以我感兴趣的是注释掉超过3行连续代码的代码块(我不希望得到很多关于XML文档注释的误报)。我可以在Visual Studio的查找对话框中使用哪些正则表达式来查找这些块?我尝试了以下方法,但它似乎不起作用:

//[^/].*\n[:Wh]*//[^/].*\n[:Wh]*//[^/]

我不是在尝试进行查找和替换 - 只需找到它们,如果不再需要,我们会在删除代码之前查看它们。

谢谢!

3 个答案:

答案 0 :(得分:6)

其他答案在Visual Studio 2012中对我不起作用(不确定是否有任何更改)。以下是:

(^[ \t]*//[^/].*\r?\n){3,}

答案 1 :(得分:4)

试试这个:

[:Wh]//[^/].*\n[:Wh]*//[^/].*\n[:Wh]*//[^/].*\n

适合我。

答案 2 :(得分:1)

请尝试使用此尺寸:

((^.*[^/])|(^)//[^/].*\n)+

实际上这对我来说效果最好:

(((^.*[^/])|(^)//[^/].*\n)|(^//\n))(((^.*[^/])|(^)//[^/].*\n)|
(^//\n))(((^.*[^/])|(^)//[^/].*\n)|(^//\n))(((^.*[^/])|(^)//[^/].*\n)|(^//\n))+

它很长但只能获得四个或更多连续注释行并处理空白注释行(仅//而没有其他任何内容)。