2012-04-09 17 views
0

我创建了一个hpp文件,我需要转发声明类,因为我不能假定它们在当时包含在内。正则表达式搜索 - 找到typedef'd的原始类/结构体名称

我有一个typedef'd类,我想在文件中查找以查找这是typedef'd的行,以便我可以获取原始类或结构名称。

我怎样才能做到这一点?我想搜索: typedef“AnythingInBetween”name

回答

1

尝试以下。

^\s*typedef\s+[a-z:<>.]+\s+thename 

这将适用于单个名称匹配'thename'且一行发生在单个行上的typedef。这并不完全是typedef的C++语法(一个正则表达式根本不可能),但会捕获90%的情况

0

你需要什么样的正则表达式?我会猜这是你需要的吗?

typedef\s"(.*?)"\sname 

\s"(.*?)"\s意味着匹配一个空格字符后跟一个双引号,然后什么,直到下一个双引号后面加一个空格