Lexer
Definition 定义
Lexer(词法分析器)是编译器或解释器中的一个组件,用来把源代码的字符流切分成一系列有意义的词法单元(tokens),例如关键字、标识符、数字、运算符、字符串等。(也常称 lexical analyzer / tokenizer。)
Pronunciation 发音(IPA)
/ˈlɛksər/
Examples 例句
A lexer turns source code into tokens.
词法分析器把源代码转换成一串词法单元(token)。
Before parsing begins, the lexer classifies the input into identifiers, keywords, and symbols so the parser can work with a cleaner stream.
在语法解析开始之前,词法分析器会把输入归类为标识符、关键字和符号,从而让解析器处理更“干净”的序列。
Etymology 词源
lexer 来自 **lex-**(与“词、词汇”相关,见 lexicon “词典/词汇”)加上表示“做某事的人/器具”的后缀 -er,字面意思接近“做词汇切分/处理的工具”。它在计算机语言处理中专指“进行词法分析的程序/模块”。
Related Words 相关词
Literary Works 文献与作品中的用例
- Compilers: Principles, Techniques, and Tools(Aho, Lam, Sethi, Ullman,“龙书”):在编译流程中系统讲解词法分析(lexer)与语法分析的分工。
- Engineering a Compiler(Cooper & Torczon):多处使用 lexer/lexical analysis 讨论前端实现与token流。
- Modern Compiler Implementation(Andrew W. Appel):在编译器前端章节中讨论 lexer 的设计与实现。
- flex & bison(John Levine):介绍如何用 Flex 构建 lexer、用 Bison 构建 parser。
- ANTLR 文档与相关书籍(如 The Definitive ANTLR 4 Reference):常以 lexer rules 形式出现,说明词法规则如何生成词法分析器。