学习编译原理Time06 ~ 正规式
正规式(regular expression也叫正则表达式):正规式是定义正规集的数学工具,是说明单词的模式(pattern)的一种表示法,用它描述单词符号时一般比正规文法更简洁。正规式和正规集 (即其描述的语言) 的定义可以用递归的形式给出。
正规式运算规律 :
设r,s,t为正规式,则它们满足如下运算规律:
r|s=s|r
r|(s|t)=(r|s)|t
(rs)t=r(st):交换律
r(s|t)=rs|rt; (s|t)r=sr|tr :分配律
εr=r ; rε=r : ε是 “连接”的恒等元素
r|r=r : “或”的抽取律
例 : 令∑={a,b},则∑上的正规式和相应正规集为
正规式 | 正规集 |
a | {a} |
a|b | {a,b} |
ab | {ab} |
(a|b)(a|b) | {aa,ab,ba,bb} |
a* | {ε ,a,aa,..,n个a的串} |
(a|b)* | {ε ,a,aa, ……n个a的串}{ε ,a,b,aa,ab,bb ……所有由 a和b组成的串} |
(a|b)* (aa|bb)(a|b)* | ∑上所有含有两个相继的a或两个相继的b组成的串},例如:aaaa、bbaabb、abbaaa |
小浩笔记
评论