如何在Visual Studio中搜索并让它忽略注释掉的内容?

RD.*_*RD. 26 search visual-studio

我正在重构Visual Studio 2005中的C++代码库.我现在已经完成了这个过程的一半,我已经注释掉了很多旧代码并替换或移动了它.现在我正在寻找我必须改变下一个但搜索功能不断给我带来旧的注释掉的东西我不再关心了.我真的不想删除那些旧代码,以防万一.

有什么方法可以搜索解决方案中的所有文件,并获得结果忽略注释的内容?我没有在visual studio本身看到一种方式,也许是一个插件可以做到这一点?

小智 48

由于其他提供的解决方案对我不起作用,我终于发现了以下解决方案:

^~(:b*//).*your_search_term

简短说明:

  • ^ 从一开始
  • ~( 不是以下
  • :b* 任意数量的空白,其次是
  • // 评论开始
  • ) 结束了
  • .* 以前任何角色都可能出现
  • your_search_term 你的搜索词:-)

显然,这只适用于//和///风格的评论.

您必须在查找窗口中单击"使用正则表达式"按钮(点和星号)才能应用正则表达式搜索

  • 在较新版本的VS中,波形符不起作用,请使用以下命令:^(?![\ t]*//).*your_search_term (9认同)
  • fyi,如果你只想搜索评论,只需删除〜 (3认同)

jk.*_*jk. -17

删除注释掉的代码,它在源代码管理中对吗?也无需将其保留在文件中。

  • 我发现的问题是,并不总是注释掉您想要排除的代码。合法的注释通常引用函数和类型名称,并且排除这些注释也会很方便。当您有像 C# 那样的文档注释时,这尤其是一个问题。 (4认同)
  • 最后,这被证明是唯一可行的解​​决方案。代码在 CVS 中,我想这总比没有好。我仍然认为这种类型的搜索对于 Visual Studio 提供的开箱即用的功能非常有用。代码着色似乎可以毫无问题地确定什么是注释、什么不是注释,因此他们应该相对容易地提供排除注释的搜索。 (3认同)