python核心编程第15章学习笔记(2)

2018-12-09 23:58

if m==k: pass else: j+=1

print 'the %dth line is not complete' %j if j==0:

print 'the txt is complete' 19. 提取出每行中完整的时间戳字段

pattern='[A-Z][a-z]{2}\\ [A-Z][a-z]{2}\\ \\d+\\ \\d+\\:\\d+\\:\\d+\\ \\d+' 20.提取出每行中完整的电子邮件地址。

(与前面的题考查内容相同,所以可以按自己喜好来做,尝试不同的思路)

pattern='\\:\\:(.+?)\\:\\:'

21.只提取出时间戳字段中的月份。 pattern='(\\w{3})\\ \\d{2}'

22.只提取出时间戳字段中的年份 pattern='[1-2]\\d{3}'

23.只提取出时间戳字段中的值(格式:HH:MM:SS)。 pattern='\\d{2}\\:\\d{2}\\:\\d{2}'

24.只从电子邮件地址中提取出登录名和域名(包括主域名和顶级域名,二者连在一起)

pattern='\\w+\\@\\w+\\.\\w{3}'

25.只从电子邮件地址中提取出登录名和域名(包括主域名和顶级域名,二者分别提取)。

pattern='(\\w+)\\@(\\w+\\.\\w{3})'

26. 将每行中的电子邮件地址替换为你自己的电子邮件地址 n=re.sub(pattern,'dongyuguo@126.com',eachLine)

27.提取出时间戳中的月、日、年,并按照格式“月 日,年”显示出来,且每行仅遍 历一次

#!/usr/bin/env python

import re

f=open('C:/python27/redata.txt','r') pattern='(\\w{3}\\ \\d{2}).+?(\\d{4})\\:' for eachLine in f.readlines(): n=re.search(pattern,eachLine) print n.group(1),',',n.group(2)

28.区号(第一组的三个数字和它后面的连字符)是可选的,即,你写的正则表达式对 800-555-1212和555-1212都可以匹配

pattern='\\d{3}\\-\\d{3}\\-\\d{4}|\\d{3}\\-\\d{4}'

29.区号中可以包含圆括号或是连字符,而且它们是可选的,就是说你写的正则表达式可以 匹配800-555-1212, 或555-1212, 或(800) 555-1212

pattern='\\d{3}\\-\\d{3}\\-\\d{4}|\\d{3}\\-\\d{4}|\\(\\d{3}\\)\\d{3}\\-\\d{4}' 正如书上所说,这里的正则表达式只是皮毛,它的强大还有待进一步学习。


python核心编程第15章学习笔记(2).doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:幼儿心理学练习题

相关阅读
本类排行
× 注册会员免费下载(下载后可以自由复制和排版)

马上注册会员

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: