Latex に似た単純な言語用のパーサーを Java で作成しようとしています。つまり、その間にいくつかの \commands[with]{some}{parameters} を含む多くの非構造化テキストが含まれています。\\ のようなエスケープ シーケンスも考慮する必要があります。
私は JavaCC でそのためのパーサーを生成しようとしましたが、JavaCC のようなコンパイラ-コンパイラは高度に構造化されたコード (汎用プログラミング言語に典型的) にのみ適しており、乱雑な Latex のようなマークアップには適していないようです。これまでのところ、低レベルに進んで独自の有限状態マシンを作成する必要があるようです。
だから私の質問は、ほとんど構造化されていない入力を解析する最も簡単な方法は何ですか?
編集: 有限状態マシンで低レベルに移行することは困難です。これは、Latex コマンドをネストできるためです。