使用Python从代码库中挑选符号

D.C*_*.C. 5 python parsing

给定代码库(比如说大型C或Objective-C项目)我想分析源代码文件并挑选出感兴趣的符号.它们可能是类声明,变量名称或类型或方法名称.是否有一个Python模块可以帮助我这个?

我可以看到的唯一方法是使用正则表达式来收集这些符号,但我认为这可能会很快变得非常丑陋.我也不是编译器或解析器方面的专家,因此可以优先考虑更轻量级的东西.

谢谢你的任何建议.

------更新-----

感谢到目前为止的所有建议,肯定是一些有希望的线索.另一种可能的途径:如果我能够编译我试图分析的项目该怎么办?调试符号(dsym)会使这个过程更容易吗?我不是在寻找任何先进的东西,只是一个类的列表,以及它们的ivar和方法名称.在这一点上,查看建议的解析工具似乎比我现在可以投资这个项目更多的工作

pyf*_*unc 5

正则表达式绝对不是检查编程语言代码的好方法.我建议从下面提供的链接中选择一个解析模块.你可以使用一些工具.它们都提供解析功能.你可以随时构建你的东西​​:

pygccxml从c ++程序文件生成xml描述.这可能更接近您要做的事情:

另外看一下,它会生成代表类结构的可导航类树.