我制作了 CFG 语法并使用EarleyParser 算法验证了我的语法。
我想问如何允许规则,即使某些东西超出了生产规则的词汇。让我举一个粗略的例子。
S1 START I had a burger END
START In the morning
START In the evening
START In the afternoon
END with a coke
END with a pepsi
END with a milk shake
现在我想要的是,如果某个单词不在的词汇表中START
,END
即使这样,它也应该被检测到。我的问题是不可能在语法中添加所有规则。
如果有人这样输入,中午我吃了一个带有 sprite 的汉堡。现在在中午和与精灵两者都不存在于CFG语法中。对于这个给定的输入,有什么方法我仍然可以从 EarleyParser 获得 S1 模式。