我想在Visual Studio中的一堆C ++源文件中找到与包含'if'的单词匹配的所有行,因此我需要过滤掉if
语句以及#if
预处理器语句。
我正在尝试使用的正则表达式如下:[^#]*if[^\s]+
但我得到的结果包括所有if
语句和#if
行。
我已经检查了this question和documentation on Visual Studio regular expressions的答案,但仍然不知道为什么我正在使用的表达式无法正常工作。
Visual Studio正则表达式的语法是否在任何地方都能正确记录?
答案 0 :(得分:3)
\s
不是空格的VS快捷方式,:b
是(空格或制表符)。这与您链接到的文档页面有关。
答案 1 :(得分:1)
这将匹配if
前面没有#
的任何(
,而~(\#)if~(\()
后面没有{,}},根据您的需要进行调整。
{{1}}
答案 2 :(得分:0)
您是否尝试过转发#
?
[^\#]*if[^\s]+