最佳答案
我过去曾在各种项目中使用 lex 和 yacc (通常是 bison) ,通常是翻译程序(例如流入 EDA 应用程序的 EDIF 子集)。此外,我还必须支持基于几十年前的 lex/yacc 语法的代码。虽然我不是专家,但我知道怎么使用工具。
过去我在各种论坛上看到过关于 Antlr 的积极评论,我很好奇我可能会错过什么。所以如果你两种都用过请告诉我 Antlr 哪种更好或者更先进。我目前的约束条件是,我在一家 C + + 工厂工作,我们发布的任何产品都不包括 Java,因此产生的解析器必须遵循这一规则。