令牌定义和词法分析器令牌之间的区别

时间:2009-07-06 18:14:05

标签: antlr

在标记块中定义标记和将标记定义为词法分析器之间有什么区别?

1 个答案:

答案 0 :(得分:3)

词法分析器是antlr通过解析特定字符组合生成的标记,例如:

fragment
F_W :   (' '|'\t'|'\r'|'\n'|'\f')*
    ;

但是,令牌块中的令牌是用户为解析的好处而创建的可视令牌;他们没有直接映射到一组角色系列。例如,

tokens { BLOCK; } 

为您提供了一个可视标记BLOCK,您可以将其置于阻止规则之前或之上,以标记子请求会话是这样的阻止规则:

block: 
'{' expression* '}' ->
 BLOCK^ expression*
;