GNU より Jakarta の方が読みやすいというか理解しやすいというか…
どちらも NFA 型(なんだよね?)。
Jakarta の方は正規表現パターン文字列をコンパイルした結果を OpCode のリスト(__
program)にしていく。
perl5 互換と awk互換 のコンパイラ、マッチャがある。以降 perl5 互換について。
__parseXXX というメソッドがパターン文字列内の表現を判定し OpCode を生み出し
ていくスタイルのようだ。
ブラケット表現の場合は __program にブラケット表現の OpCode と文字コードの
範囲を登録するみたいだ。