2.1 简单介绍
“词lexical”在编程上说就是 变量名、数字、关键字等标记token。 “词法分析机lexical analyser” 会把对它的输入 分解成 标记token。
以下是为什么我们在复杂系统中不把 “词法分析” 集成到 “语法分析” 中:效率、模块化以及传统。
pass
虽然手写“词法分析机”不太困难,但是出于易维护性以及可靠性的考虑,我们常常推荐使用软件生成“词法分析机”的代码,而不是手写。
我们使用“正则表达式”来生成“词法分析机”,这些被生成的“词法分析机”是一类非常简单的“有限自动机”。本章将介绍它们。
2.2 正则表达式
“正则表达式”用以表示一组符合某些规则的字符串集合。
这里我们约定本文中正则表示的一些简写。
需要注意如下:
这些操作的优先级如下图|: