5 lexers vs解析器 词法分析器和解析器在理论上真的有很大不同吗? 讨厌正则表达式似乎很时髦:编码恐怖,另一篇博客文章。 但是,流行的基于词法分析的工具:pygments,geshi或prettify都使用正则表达式。他们似乎什么都没法... 什么时候足够词汇,何时需要EBNF? 有没有人将这些词法分析器生成的令牌与bison或antlr解析器生成器一起使用? 308 parsing antlr lexer pygments
4 是否在寻找关于“ tokenizer”,“ parser”和“ lexers”是什么以及它们如何相互关联和使用的明确定义? 我正在寻找“ tokenizer”,“ parser”和“ lexer”分别是什么以及它们如何相互关联的明确定义(例如,解析器是否使用令牌器,反之亦然)?我需要创建一个程序,该程序将通过c / h源文件提取数据声明和定义。 我一直在寻找示例并可以找到一些信息,但是我真的很难掌握语法规则,语法分析树和抽象语法树等基本概念以及它们之间的相互关系。最终,这些概念需要存储在实际程序中,但是1)它们看起来像什么,2)是常见的实现。 我一直在浏览有关Lex和Yacc等主题和程序的Wikipedia,但是从未经历过编译器类(EE主修),我发现很难完全了解正在发生的事情。 151 parsing lexer tokenize
2 在哪里可以学习编写词法分析器的基础知识? 我想学习如何编写词法分析器。我的大学课程有一个任务,我们必须编写一个解析器(和一个词法分析器一起使用),但这是在没有指导或反馈的情况下(超出标准)提供给我们的,所以我并没有从中学到太多。 在搜索了此主题之后,我只能找到相当高级的文章,这些文章着重于我认为比我所处的位置要走几步的领域。我想讨论一种为非常简单的语言编写词法分析器的基础知识,我可以以此为基础来研究标记更复杂的语言。 在此阶段,我对最佳实践或优化技术并不真正感兴趣,而宁愿关注重点。有什么好的资源可以帮助我入门? 80 language-agnostic lexer compiler-construction