私の問題は、渡されたメッセージyyerrorがすでにフォーマットされており(つまり、実際には何がうまくいかなかったのか英語の説明です)、取得したいのは現在のトークン(つまり、エラー疑似トークンの前のトークン)だけです。
それで、それを取得する方法は?
私はC#のlex/yacc実装であるgplex/gppgを使用しています。
100%正確ではないことをお詫びします。必要なのは、(トークンによって)一致した本文(テキスト)ではなく、トークン(シンボル)です。
[A-Za-z0-9_]+ルールがを構成しているとしましょうID。IDだから私はトークンではなくトークンを取得したいと思いますfoobar。