パーサーやその他の高度なメソッドが存在しない Java のような言語で、ソース ファイルを解析して評価したいと考えています。これは、独自のクラウド プラットフォームである Salesforce.com の Apex 言語です。Antrl/Java に基づいていることは知っていますが、Apex コードを使用して Apex コードを解析したいので、プラットフォーム内から解析する方法がなく、唯一の手段は Regexp です。
(正規表現を使用して) ソース ファイルを読み込むときに、UML クラス図を描画するために興味深いすべての部分を一致させて抽出します。
- クラス宣言
- メソッド宣言
- 内部クラス宣言
それらを見つけたいのですが、正規表現グループを使用して、一致した文字列の一部に直接アクセスできるようにしたいと考えています。それらの部分は次のとおりです。
- 公立か私立か?
- 静的、抽象的、またはデフォルトですか?
- それはクラスですか、それともインターフェースですか?
- メソッド名は?
- Returntype とは何ですか?
- パラメータリストは何ですか?