0

ANTLRのレクサー文法を作成するときに、読み取り文字をルールで受け入れるかどうかを決定するメソッドを指定することはできますか?

たとえば、次のようなものです。

WS  :   x = . [ only accept, iff Character.isWhitespace($x.text[0])==true] -> skip
4

1 に答える 1

1

はい、セマンティック述語を使用します。

WS : . {Character.isWhitespace(getText().charAt(0))}?
     -> skip
   ;

しかし、それは速くはありません。

于 2013-02-28T18:45:03.873 に答える