gpt4 book ai didi

c++ - 查找 C++ 元素的正则表达式?

转载 作者:塔克拉玛干 更新时间:2023-11-03 08:17:12 26 4
gpt4 key购买 nike

我正在为 ANSI C++ 的元素寻找一些预定义的正则表达式。

我想创建一个程序,它将头文件(包含包含、命名空间、类等)作为输入并返回包含找到的类名、方法、属性等的列表。

很难用谷歌搜索类似的东西,我总是以如何在 C++ 中使用正则表达式的教程结尾。也许我只是在谷歌上搜索错误的条款?也许有人已经找到/使用/创建了这样的正则表达式。

最佳答案

这种类型的操作不可能用正则表达式来完成。 C++ 不是常规语言,因此不能用正则表达式可靠地解析。这里最安全的方法是在这里使用实际的解析器来定位 C++ 元素。

如果 100% 的正确性不是目标,那么正则表达式将起作用,因为它可以被精心设计以捕获代码库中的大多数情况。最简单的例子如下

class\s+[a-z]\w+

但是它会错误地将以下内容匹配为一个类

  • 转发声明
  • 任何带有“class foo”文本的字符串文字
  • 模板参数
  • 等...

关于c++ - 查找 C++ 元素的正则表达式?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4157834/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com