我需要一些帮助来尝试将 C 包含文件与完整路径匹配,如下所示:
#include <stdio.h> -> stdio.h
#include "monkey/chicken.h" -> monkey/chicken.h
到目前为止,我已经(改编自我发现的另一个表达):
^\s*\#include\s+(["'<])([^"'<>/\|\b]+)*([">])
但是,我在这一点上有点卡住了 - 它在第二种情况下不匹配,而且我不确定如何返回匹配的结果,例如返回 regcomp() 的文件路径。
顺便说一句,我查看了 regexplib.com,但找不到任何合适的内容。
编辑:是的,我是一个完全正则表达式的新手,将 POSIX 正则表达式与 regmatch_t 和 friend 一起使用...
最佳答案
这是我写的:
#include ((<[^>]+>)|("[^"]+"))
合身吗 ?
关于regex - 匹配 C#include 文件的正则表达式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1420017/