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

9
我正在处理一个大型的Visual Studio解决方案,遇到了一些有大量被注释掉的代码块的区域。这些代码块通常超过3行,并且都以//开头(可能使用Ctrl+K、C注释)。我想尝试找出所有存在于我的解决方案中的这些地方,以便我们的团队可以处理它们,并在不再需要时删除它们(毕竟,我们正在使用正确的源代码控制,随时可以回到历史记录中查看旧代码!)。
因此,我对跨越3个连续行的注释代码块感兴趣(我也不想得到许多XML文档注释的误报)。在Visual Studio的查找对话框中,我可以使用什么正则表达式来查找这些块?我尝试了以下内容,但似乎不起作用:
//[^/].*\n[:Wh]*//[^/].*\n[:Wh]*//[^/]

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

谢谢!


你能把你的正则表达式作为 code 发布吗(用四个空格缩进)?现在 * 被解析成了 斜体 标签。 - Bart Kiers
点赞你指出旧代码应该被删除而不是注释掉。就像你所说的,版本控制系统可以在需要时帮助你找回那些代码。 - Philippe
3个回答

8

其他答案在Visual Studio 2012中对我没有用(不确定是否有任何改变)。以下方法可行:

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

4
尝试这个:

试试这个:

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

对我来说没问题。


1

试试这个:

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

实际上,这是目前对我来说最好的选择:

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

这是一段 IT 相关的内容,虽然很长,但它只获取四个或更多连续的注释行,并处理空白注释行(只有 // 没有其他内容)。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接