2009-10-14 54 views
8

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

所以我很感兴趣的是注释掉超过3个连续行的代码块(我也不想为XML文档注释获得很多误报)。我可以在Visual Studio的查找对话框中使用哪些正则表达式来查找这些块?我尝试以下,但它似乎并没有工作:

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

我不想做一个查找和替换 - 只要找到他们,我们将看看他们删除,如果代码之前它不再需要。

谢谢!

+0

你可以将你的正则表达式作为'code'(用四个空格缩进)吗?现在'*'正在被“吃掉”为* italic *标签。 – 2009-10-14 13:40:33

+0

+1指出旧代码应该被删除,而不是注释。就像你说的那样,如果需要的话,版本控制系统可以让你返回代码。 – Philippe 2009-10-14 15:20:37

回答

4

试试这个:

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

为我工作。

+0

非常棒 - 谢谢! – 2009-10-14 14:59:07

6

其他答案在Visual Studio 2012中不适用于我(不确定是否有任何更改)。下面做:

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

这也适用于VS2012。 – nzduck 2013-08-16 00:56:49

1

试试这个关于大小:

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

其实这个最适合我至今:

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

它很长,但它只是变得四更多连续的评论行和处理空白评论行(只是//,没有别的没有内容)。

相关问题