Visual Studio中的正则表达式

时间:2011-09-12 12:15:32

标签: c++ regex visual-studio

我想在Visual Studio中的一堆C ++源文件中找到与包含'if'的单词匹配的所有行,因此我需要过滤掉if语句以及#if预处理器语句。

我正在尝试使用的正则表达式如下:[^#]*if[^\s]+

但我得到的结果包括所有if语句和#if行。

我已经检查了this questiondocumentation on Visual Studio regular expressions的答案,但仍然不知道为什么我正在使用的表达式无法正常工作。

Visual Studio正则表达式的语法是否在任何地方都能正确记录?

3 个答案:

答案 0 :(得分:3)

\s不是空格的VS快捷方式,:b是(空格或制表符)。这与您链接到的文档页面有关。

答案 1 :(得分:1)

这将匹配if前面没有#的任何(,而~(\#)if~(\() 后面没有{,}},根据您的需要进行调整。

{{1}}

答案 2 :(得分:0)

您是否尝试过转发#

[^\#]*if[^\s]+