私はANTLRの初心者であり、それを使用してあいまいな言語のパーサーを開発しています。私がやりたいのは、ASTを使用せずに「コメント」の周りのトークンを1つのトークンに結合する方法です。
この簡単な文法を使用して問題を説明しています
grammar test;
query
: expression+
;
expression
: alpha
;
alpha
: ID
;
ID : ('a'..'z'|'A'..'Z'|'_') ('a'..'z'|'A'..'Z'|'0'..'9'|'_')*
;
COMMENT
: '{' ( options {greedy=false;} : . )* '}' {$channel=HIDDEN;}
;
単純なテキスト「Test{Comments}er」で実行すると、「Test」と「er」という 2 つの別個のトークンが生成されます。それから単一のトークンを作成したい間。どんな助けでも大歓迎です。
前もって感謝します
ジム