ANTLR中解析器规则和词法分析器规则的实际区别?

问题描述:

我理解其背后的理论分离的语法规则和词法规则的理论,但什么是这两个语句之间的ANTLR的实际差异:不同的AST树ANTLR中解析器规则和词法分析器规则的实际区别?

my_rule: ... ; 

MY_RULE: ... ; 

难道他们的结果?不同的表现?潜在的歧义?

+0

什么是空白处理? – Dario 2010-11-28 17:29:59

仁写道

...什么是ANTLR这两个语句之间的实际差别...

MY_RULE将用于标记化输入源。它代表了您的语言的基本组成部分。

my_rule从解析器中调用,它由零个或多个其他解析器规则或由词法分析器生成的标记组成。

这就是区别。

仁写道

他们是否会导致不同的AST树?不同的表现? ...

解析器使用词法分析器生成的令牌构建AST,所以这些问题对我来说没有任何意义。词法分析器仅仅将解析器“喂”给一个1维的令牌流。