5
|
Grundlefleck anujkk · 技术社区 · 15 年前 |
![]() |
1
4
我不认识Javacc,但我是一名编译工程师。
这个
这可能是
更重要的是,尽管如此,你使用的词法分析和作文的方式是不可能奏效的。考虑这个数字:
这可以被解析为
在lexer中,您几乎不应该尝试处理这样的对。相反,您应该处理普通数字(
(例如,您将如何处理
另外,请注意,lexer中的单个数字整数将不匹配为
|
![]() |
2
0
我没有使用javacc,但数字对可能不明确。 我认为问题归结于这样一个事实:同样精确的东西可以与float_对和integer_对同时匹配,因为float可以与integer匹配。 但这只是一个从未见过javacc语法的猜测:) |
![]() |
3
0
这可能意味着每一个
也许你可以指定
|
![]() |
4
0
由于巴里·凯利的回答,我想到的解决方案是:
我完全忘了包括用于分隔两个令牌的空间,我还使用了“”符号,它停止了令牌的匹配,并且只在其他令牌的定义中使用。以上由javacc编译,没有警告或错误。 然而,正如巴里所指出的,有理由不这么做。 |
![]() |
lonix · 使用sed从JSON中提取非贪婪正则表达式 1 年前 |
![]() |
Dima Malko · 如何在指定符号前添加符号? 2 年前 |
![]() |
shekharsabale · 从列表元素捕获子字符串 2 年前 |
![]() |
Katia · 根据特定规则进行多行匹配 2 年前 |
![]() |
MHA · Pandas str.extract()以字母结尾的数字 2 年前 |
![]() |
Slava Vir · 如何查找后面“/”之间的最后一组 2 年前 |