Python语言程序设计(工作手册式)【实训题目-含答案】实验7 正则表达式答案版.docx
《Python语言程序设计(工作手册式)【实训题目-含答案】实验7 正则表达式答案版.docx》由会员分享,可在线阅读,更多相关《Python语言程序设计(工作手册式)【实训题目-含答案】实验7 正则表达式答案版.docx(9页珍藏版)》请在第一文库网上搜索。
1、Python基础卖歌报告实验项目实验7正则表达式学员姓名实验日期实验7正则表达式一、实验目的1、掌握正则表达式的使用方法2、掌握常用的正则表达式处理函数二、单元练习(-)选择题1 .匹配字符串abc,需要输入的正则表达式为(B)A.a.bcB.abcC.AbcD.abc.2 .匹配以abc开头的所有字符串,需要输入的正则表达式为(C)A.abc.B.abc$C.abcD.abc*E.abc.+Eabc?G.abc.*3 .如果字符串中有*需要匹配,该输入表达式为(A)A.*B.*C.*D.(*)(-)填空题运算符描述d匹配任意数字,等价于0-9.D匹配任意非数字s匹配任意空白字符,等价于tnr
2、f.w匹配字母数字及下划线W匹配非字母数字及下划线xy?匹配。个或1个由前面的正则表达式定义的片段,非贪婪方式X1y匹配X或yX*匹配0个或多个的表达式x+匹配1个或多个的表达式abcdef匹配abc或def己知字符串:abbbc则:正则表达式ab*的结abbb果己知字符串:abbbc则:正则表达式ab*?的结果a三、课堂练习任务1:【案例1:正则表达式进行网页解析】案例背景:已知某一网站的网页部分内容如下所示,该网页内容存储到本机D:/Web.txt。要求:请解析出上述网页中所有以https开头的ur1,并输出。1245VPCIaSS=appintro-1iUe”某某网站vp6VPCIaSS
3、=s1ogan我们的部落格vp78aref=910 ahref=11 12 13 IgetUr1s.py代码如下:1importre2f=Open(TeSt.txt,T)3 web=f.read()4 1ir1s=re.finda11(https:/.web)5 f.c1ose()6 forur1inur1s:7 IPrint(Uii)案例说明:0第1行,导入re模块,re模块使Python语言拥有全部的正则表达式功能。0第2行,调用文件的OPen方法,打开Web.txt。0第3行,将web.txt中的文本内容读取出来,赋值给Web变量。0第3行,这里用了re模块,它提供Per1风格的正则表达
4、式模式。利用finda函数获取字符串Web中所有匹配的字符串。匹配格式为:https:/.*?00https:开头表示以https:/为前缀文本。0点(.)匹配任意除换行符“n”外的字符。0星号(*)表示匹配前一个字符O次或无限次。0星号(*)后跟问号(?)表示非贪婪匹配,即尽可能少的匹配,如*?重复任意次,但尽可能少重复。0三个符号组合(.*?)表示匹配任意数量的重复,但是在能使整个匹配成功的前提下使用最少的重复。如:a.*?b匹配最短的,以a开始,以b结束的字符串。如果把它应用于aabab的话,它会匹配aab和ab。0因此,https:/.*?”表示以hup:开始,以双引号()结束的字符串
5、,而且要求匹配重复最少的。上例中首先匹配到htps:/WWW.websiw叩p?ChanneI=top-nav,所以不再匹配href=,https7wapp7channe1=top-navc1ass=,虽然C1aSS=后面也有双引号(),但是因为是非贪婪模式,所以选择第一次匹配成功的那个。即httpswapp7channe1=top-nav,o以上实例执行结果:hits:WWWwapp?Channe1=top-nav”任务2:【案例2:正则表达式在数据清洗中应用】已知:某网址123456789101112131415161718电影名称总场次/占比网票票房A票房B票房C票房D票房实时(不含预售
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 实训题目-含答案 Python语言程序设计工作手册式【实训题目-含答案】实验7 正则表达式答案版 Python 语言程序设计 工作手册 题目 答案 实验 正则 表达式