我想探索在自然语言的上下文中使用形式语言处理。为此,我正在寻找一种对歧义具有鲁棒性的解析器生成器,因为当它可以使用多个产生式来生成相同的字符串时,它不会将 EBNF 表示为无效。此外,处理冗余的标准方法是返回解析森林而不是解析树。
我不是在问最好的工具是什么,但前提是有可以为 C# 获得的工具。如果有,我在哪里可以找到它们。
该工具是开源的还是专有的并不重要。
答案将授予满足解析器生成器返回的解析器所需约束的唯一(前面未提及)工具的最长列表。
请帮我探索解析森林。
我想探索在自然语言的上下文中使用形式语言处理。为此,我正在寻找一种对歧义具有鲁棒性的解析器生成器,因为当它可以使用多个产生式来生成相同的字符串时,它不会将 EBNF 表示为无效。此外,处理冗余的标准方法是返回解析森林而不是解析树。
我不是在问最好的工具是什么,但前提是有可以为 C# 获得的工具。如果有,我在哪里可以找到它们。
该工具是开源的还是专有的并不重要。
答案将授予满足解析器生成器返回的解析器所需约束的唯一(前面未提及)工具的最长列表。
请帮我探索解析森林。
您可能会发现 Earley 算法的实现可以满足您的需求,例如https://github.com/coonsta/earley
我自己的自然语言引擎 (nlp.abodit.com) 基于类似于 Earley 的算法。