换行数不足或太多时出现ANTLR错误
当输入文件在EOF处没有换行符或有多个换行符时,ANTLR会给出以下错误换行数不足或太多时出现ANTLR错误,antlr,Antlr,当输入文件在EOF处没有换行符或有多个换行符时,ANTLR会给出以下错误 第0行:-1个不匹配的输入“”,需要换行 如何考虑在输入文件末尾有多个或没有换行符的可能性。最好我能在语法中解释一下 规则: parse : (Token LineBreak)+ EOF ; 仅解析由一个换行符分隔的令牌流,以一个换行符结束 而规则: parse : Token (LineBreak+ Token)* LineBreak* EOF ; 解析由一个或多个换行符分隔的令牌流,以零、一个或
第0行:-1个不匹配的输入“”,需要换行
如何考虑在输入文件末尾有多个或没有换行符的可能性。最好我能在语法中解释一下 规则:
parse
: (Token LineBreak)+ EOF
;
仅解析由一个换行符分隔的令牌流,以一个换行符结束
而规则:
parse
: Token (LineBreak+ Token)* LineBreak* EOF
;
解析由一个或多个换行符分隔的令牌流,以零、一个或多个换行符结尾
但是,您真的需要使换行符在解析器中可见吗?你不能把它们放在“隐藏频道”上吗
如果这不能回答你的问题,你就必须发布你的语法(你可以编辑你原来的问题)
嗯