我的规则定义如下:
metric_expr
: metric=NAME ('AS' label=NAME)? {System.out.println(String.format("%s: %s", metric, label));}
;
我收到错误说:
error(146): com\foo\bar\PRL.g:65:54: invalid StringTemplate % shorthand syntax: '%s'
任何人都知道如何解决这个问题?
答案 0 :(得分:3)
使用单个反斜杠转义%
个符号。
如果您想显示令牌的文字,请使用令牌的.text
属性:
metric_expr
: metric=NAME ('AS' label=NAME)?
{System.out.printf("\%s: \%s", $metric.text, $label.text);}
;