1

我需要构建一个匹配通用#include "file.h"代码行的表达式。

出于该目的,以下内容是否正确?

([[:blank:]]*#include[[:blank:]]*")([[:print:]]*\.h)([[:print:]]*)

表达式应匹配以下内容:

#include     "header.h" //first include

     #include "header2.h"      //second include

#include "header3.h"

我使用 boost 正则表达式库。

4

1 回答 1

2

Boost Regex 可以使用 Perl,或 POSIX 正则表达式语法: http: //www.boost.org/doc/libs/1_52_0/libs/regex/doc/html/boost_regex/syntax.html

所以你可以在这里检查和测试你的正则表达式:http ://www.regextester.com/

如果您使用 boost 的默认行为(见上文),只需设置为 preg (perl)。

于 2013-01-23T12:59:03.230 回答