【问题标题】:Turn grammar into LL1 Grammar将语法转化为 LL1 语法
【发布时间】:2011-10-30 07:05:30
【问题描述】:

我明天要复习考试,并且要复习前几年的考试。

测试的是语法。

Expression -> Foo "+" Bar "end"
Foo -> [a-z0-9]+ | Expression
Bar -> Expression Foo | a*b*c+

我已经尝试并花费数小时研究如何做到这一点,但无法弄清楚。

我看过用 epsilion 代替东西,但没有信心。

我认为我需要创建一个 Foo' 和一个 Bar' 然后添加 epsilon 规则,但我不确定。

有人可以告诉我(简单)_如何将其更改为支持 LL(1) 的语法

提前致谢

【问题讨论】:

    标签: parsing grammar text-parsing left-recursion


    【解决方案1】:

    我记得 LL-1 语法在 1 个符号中向前看。您的目标是消除歧义和左递归。所有你需要的——使用左分解。先看看this

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2015-10-27
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2014-03-25
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多