还有一种表达它的绝对值(如6)的方法。我现在以这种方式执行它,但这似乎不是应该的方式。预先感谢。
terminal DIGIT : ('0'..'9'|'a'..'f'|'A'..'F');
terminal COLOR_HEX : DIGIT DIGIT DIGIT DIGIT DIGIT DIGIT;
terminal COLOR_HEX : DIGIT*6; <-- is there a way to achieve this?
当前(Xtext 2.19)没有这样的语法。 Xtext.xtext
语法说明terminal
规则:
TerminalToken returns AbstractElement:
TerminalTokenElement cardinality=('?'|'*'|'+')?
;
TerminalTokenElement returns AbstractElement:
CharacterRange | TerminalRuleCall | ParenthesizedTerminalElement | AbstractNegatedToken | Wildcard | ^EOF
;
非终止规则支持相同的基数。
因此您当前的解决方案很好。