clang-tidy:忽略 clang-tidy 分析中的特定文件夹

clang-tidy: Ignore specific folder from clang-tidy analysis

提问人:user2020 提问时间:6/16/2021 最后编辑:user2020 更新时间:2/28/2023 访问量:4294

问:

我有以下目录结构

├── .clang-格式

├── .clang-tidy

├── 外部

├── 脚本

└── 来源

为了我的叮当声整洁的执行,我只想包含文件夹中的标题,并从中排除标题。以下设置对任一匹配项都不起作用: 正则表达式的格式正确sourceexternalHeaderFilterRegex: '^(source)+(?!.*external).*'

在文件中,如果我仅包含它,则不包括文件夹,但不包括头文件.clang-tidyHeaderFilterRegex: '^(?!.*external).*'externalsource

同样,如果我只包含此检查,它不会排除外部文件。HeaderFilterRegex: '(src/)'

更新

好的,这似乎与 clang 使用 Posix ERE 正则表达式风格有关(感谢@pablo285),这不支持负面展望。我本来以为这是使用 clang-tidy 的一个相当标准的要求,从分析中排除某些文件夹。

C++ 正则表达式 clang-tidy

评论

0赞 pablo285 6/18/2021
您使用了错误的正则表达式风格 - 您链接到 PCRE,但 clang 使用了 Posix ERE。
0赞 user2020 6/18/2021
@pablo285 哦,我什至没有意识到这一点,具体有什么区别
0赞 user2020 6/18/2021
@pablo285 是否可以使用 Posix 进行负面展望
0赞 pablo285 6/22/2021
不幸的是,我不是正则表达式方面的专家,我只是碰巧知道这一点,因为我过去也遇到过类似的问题。尝试在标签中发布问题。regex
0赞 miguno 2/28/2023
有关解决方法,请参阅 stackoverflow.com/a/75586089/1743580 上的 Q&A。

答: 暂无答案