例如,请考虑以下正则表达式
01+10(11)*
如何描述与上述RE相对应的语法?
G -> A G -> B
>将A *改为
G -> (empty) G -> A G
>将AB改为
G -> AB
并且在A和B上递归地进行.基本情况是空语言(没有产生)和单个符号.
在你的情况下
A -> 01 A -> 10B B -> (empty) B -> 11B
如果语言由有限自动机描述:
>使用状态作为非终结符号>使用语言作为终端符号集>添加转换p – > aq用于任何转换p – > q在原始自动机中的字母a上>使用初始状态作为语法中的初始符号