Answers:
我可以推荐的一本书是D. Grune,CJH Jacobs的《解析技术:实用指南》。
如果您想了解解析器的理论,我推荐这本经典书籍的第1卷:
Aho,Alfred V .;Ullman,Jeffrey D.,《解析,翻译和编译理论》,Prentice-Hall(1972)。
如果您不介意语言上的差异,那么Perl高阶Perl的第8章全都涉及解析,尤其是使用解析器组合器构建了递归下降解析器。它可以访问(如果您不担心Perl的话),并且可以根据需要免费阅读。几年前,它激发了我对解析技术的兴趣。
虽然“解析技术”是一本很棒的书,而且我已经读了好几次了,但它的重点是LR解析,这对您来说不会很有趣。在您的特定情况下,您正在查看的是PEG,它们是自上而下的递归下降解析,具有基于替代顺序的回溯功能。
我建议您看看使用相同策略的解析器组合器。例如,您可以检查本文http://research.microsoft.com/pubs/65201/parsec-paper-letter.pdf,该文件使用Haskell构建了解析器组合器。检查try
它们包含回溯的部分(第3.4节)。
无论如何,您需要学习的是: