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 回答