Parsing 需要不是LR(0)的LR(1)语法示例吗?
有人会给我一个经过处理的LR(1)语法示例,它不是LR(0)语法吗?我只是想找出为什么LR(1)解析器更高效和强大,并尝试了一个语法示例,发现它不是LR(0),解析表中存在冲突,然后尝试LR(1)也没有用。。。 一个非常简单的语法示例(扩充) 需要详细分析。 有人会举例说明吗?在这里感到困惑。例如:Parsing 需要不是LR(0)的LR(1)语法示例吗?,parsing,Parsing,有人会给我一个经过处理的LR(1)语法示例,它不是LR(0)语法吗?我只是想找出为什么LR(1)解析器更高效和强大,并尝试了一个语法示例,发现它不是LR(0),解析表中存在冲突,然后尝试LR(1)也没有用。。。 一个非常简单的语法示例(扩充) 需要详细分析。 有人会举例说明吗?在这里感到困惑。例如: S -> Aa | Bb A->c B->c 为了确定ac是a还是B,您需要知道以下符号 在现实生活中,epsilon产品通常需要LR(1): OPTIONAL_A ->
S -> Aa | Bb
A->c
B->c
为了确定ac
是a
还是B
,您需要知道以下符号
在现实生活中,epsilon产品通常需要LR(1):
OPTIONAL_A -> ε | A
MULTI_A -> ε | MULTI_A A
。。。其中ε
仅匹配空字符串。为了减少epsilon的产生,你总是需要超越它。这可能是重复的。
OPTIONAL_A -> ε | A
MULTI_A -> ε | MULTI_A A