正则表达式
约 366 字大约 1 分钟
2024-12-26
有限自动机F
所接受的单词集合形成了一种语言,记作L(F)
。F
的状态转换图详细的规定了如何拼写除该语言中的每一个单词。
转换图一般来说是复杂的和非直观的。因此,大多数系统会使用一种叫正则表达式regular expression
的符号来描述拼写规则。后文简称Re
。
对于出现的大多数编程语言中出现的标点符号。如冒号分号,各种括号,由他们的字符形式表示。
我们使用更严谨的定义来说明正则表达式。我们需要一个字母表 ∑。其中空字符需要 ε 来表示。将正则表达式所描述的语言记作L(r)
。我们规定如下三个基础的正则表达式操作
- 或运算 ∣,或者叫集合。对于两个正则表达式的集合 r,s。r∣s 表示 {x∣x∈L(r) or x∈L(s)}
- 连接运算,对于两个正则表达式的集合 r,s。rs 表示将 r 的集合字符拼接到 s 集合字符前面.
- 闭包运算。集合 r 的克林闭包记作 r∗,⋃i=0∞ri,代表了r的从0到正无穷的重复操作。正闭包代表 i 从1开始,有限闭包代表 i 是有上限的。
更新日志
2024/12/28 13:06
查看所有更新日志
4e0c4
-更新完编译器扫描器于