1
// Parser
statement
    : DELIMITER* statementPart+ DELIMITER* (EOL { newline(); })?
    ;

// Lexer
DELIMITER
    : ';'
    ;


sql-stmt.g:85:13: rule classDef trapped:
sql-stmt.g:85:13: unexpected token: DELIMITER

第 85 行是statement规则。我真的不知道为什么会失败。请帮忙?

这与 Antlr2 顺便说一句。是的,是的,超级老,是的,是的……

谢谢!

4

1 回答 1

2

一直在玩 Antlr4 太多了 :) 在 Antlr2 中,我猜令牌/规则必须用括号包裹起来才能应用*or+或 ...

于 2020-05-14T21:49:43.223 回答