私は非常に単純な文法を持っています:
E->E+T|T
T->T*F|F
F->(E)|id
そして、unar操作をサポートするように拡張したいと思います(私見、これは正しい文法ですが、文法、パーサー、レクサーなどでは本当のn00bであるため、間違っている可能性があります):
E->E+T|T
T->T*F|F
F->+F|(E)|id
本当の問題は、解析テーブルを更新しようとしているときに発生します。
問題は、単項演算のサポートを提供するためにこのテーブルをどのように編集すればよいか (記述された文法に基づいて) ですか?
PSとにかく、LR(k)(またはLALR)パーサーを使用してJava(または他のオブジェクト指向言語)で算術式を解析するのを手伝ってくれてとても感謝しています^_^
PS2。この場合、パーサージェネレーターは適していません。