我有一个如下的树顶语法:
grammar Addme
rule AddExpr
Num '+' Num
end
rule Num
[0-9]+ <ExprNumber>
end
end
当我解析表达式时,这是有效的:
g = AddmeParser.new
t = g.parse("1234+56789")
. . . 有一个"1234"
与 type匹配的语法节点ExprNumber
。但是,如果我像这样在规则中添加括号:
rule Num
([0-9]+) <ExprNumber>
end
它与类不匹配ExprNumber
。为什么会发生这种情况?