これは簡単な質問です。次のパーサー ルールがあるとします。
ifStatement
: expr3b=IF logical (~(THEN)) expression* (ELSE expression *)? ENDIF // missing THEN
;
これがこの文字列と一致しないのはなぜですか?
"IF CODE=\"10\" DUE_DATE < YESTERDAY ENDIF"
( IF、THEN、ELSE、およびENDIFは、想定どおりに定義されたトークンです。logicalおよびexpressionその他のルールです)。