保留原始文本中的空格

时间:2016-05-20 04:55:50

标签: antlr grammar

在Antlr4语法中,我有一个看起来像

的规则
a :
    b
    {
       System.out.println($b.text);
    }
  ;

在输出中我发现缺少空格..

实施例     输入:  int a = 5 ;     输出:
inta=5;

在语法中我也有一条规则

ws: [ \t\n] -> skip;

如何保留白色空间? (语法很大......所以我不能在这里分享)

1 个答案:

答案 0 :(得分:0)

我自己找到了答案。如果有人需要,

只需替换

ws: [ \t\n] -> skip;

ws: [ \t\n] -> channel(HIDDEN);

编辑:不确定这是否适用于较旧的antlr版本..它肯定适用于Antlr4