在不存在解析器和其他高级方法的类 Java 语言中,我想解析和评估源文件。它是专有云平台 Salesforce.com 的 Apex 语言。我知道它基于 Antrl/Java,但无法从平台内部解析它,因为我想用 Apex 代码解析 Apex 代码,唯一的方法是正则表达式。
在读取源文件时,我希望(通过使用正则表达式)匹配并提取所有有趣的部分以绘制 UML 类图:
- 类声明
- 方法声明
- 内部类声明
我想找到它们,并通过使用正则表达式组,我希望能够直接访问匹配字符串的一部分。这些部分是:
- 是公有的还是私有的?
- 它是静态的、抽象的还是默认的?
- 是类还是接口?
- 方法名是什么?
- 返回类型是什么?
- 参数列表是什么?