正规表达式和正规集
考试要求: 掌握     
知识路径:  > 嵌入式系统软件基础知识  > 嵌入式系统程序设计  > 嵌入式程序设计语言  > 编译器和解释器的基础知识  > 程序设计语言的翻译基础  > 词法分析


 
       词法规则可用3型文法(正规文法)或正规表达式描述,它产生的集合是语言基本字符集∑(字母表)上的字符串的一个子集,称为正规集。
       对于字母表∑,其上的正规式(正则表达式)及其表示的正规集可以递归定义如下。
       (1)ε是一个正规式,它表示集合Lε)={ε}。
       (2)若a是∑上的字符,则a是一个正规式,它所表示的正规集为La)={a}。
       (3)若正规式rs分别表示正规集Lr)和L(s),则:
       ①r|s是正规式,表示集合Lr)∪L(s)。
       ②r·s是正规式,表示集合LrLs)。
       ③r*是正规式,表示集合(Lr))*。
       ④(r)是正规式,表示集合Lr)。
       仅由有限次地使用上述三个步骤定义的表达式才是∑上的正规式。
       运算符“|”“·”“*”分别称为“或”“连接”和“闭包”。在正规式的书写中,连接运算符“·”可省略。运算符的优先级从高到低顺序排列为“*”“·”“|”。
       设∑={ab},在下表中列出了∑上的一些正规式和相应的正规集。
       
       正规式和相应的正规集
       若两个正规式表示的正规集相同,则认为二者等价。两个等价的正规式UV记为U=V。例如,b(ab)*=(ba)*b,(a|b)*=(a*b*)*。
 

更多复习资料
请登录电脑版软考在线 www.rkpass.cn

京B2-20210865 | 京ICP备2020040059号-5
京公网安备 11010502032051号 | 营业执照
 Copyright ©2000-2025 All Rights Reserved
软考在线版权所有