是否可以选择让javacc贪婪地匹配一些令牌?
我正在尝试像这样定义一个实体:
<CURLED: "{" (<CHAR>)+ "}">
我想要的是序列:
a. {HELLO}
b. {HELLO} {WORLD}
c. {HELLO} {OUR} {WORLD}
被正确解析,javacc将单独使用大括号中的标记。
默认情况下,javacc尝试使最长匹配成为可能,以便案例b和c最终被解析为:
b. HELLO} {WORLD
c. HELLO} {OUR} {WORLD
我错过了一些明显的东西吗?
答案 0 :(得分:0)
好的,我通过不允许在CURLED标记定义中出现“{”字符来解决问题。这种排除是用〜[“{”]完成的。