Python核心编程学习笔记之chapter15
这一章蛮重要,代码都敲进去试过,请批评指正。
方便起见,程序写在py文件中。
1.识别下列字符串:“bat,”“bit,”“but,”“hat,”“hit,”或“hut”#!/usr/bin/envpython
importre
pattern=[bh][aiu]t
m=bkibit
n=re.search(pattern,m)
ifnisnotNone:
printn.group()
Ps:还可以findall函数
2.匹配用一个空格分隔的任意一对单词,比如,名和姓
pattern=[A-Za-z]+\[A-Za-z]+
3.匹配用一个逗号和一个空格分开的一个单词和一个字母。例如,英文人名中的姓和名的首字母
pattern=[A-Za-z]+\.\[A-Za-z]
4.匹配所有合法的Python标识符
pattern=[\w]+
Ps:不是非常完美,&算不算?
5.请根据您(读者)本地关于地址的格式写法匹配一个街道地址(你写出的正则表达式要尽可能通用以匹配任意数目的表示街道名字的单词,
包括类型指示)。比如,美国的街道地址使用这样的格式:1180BordeauxDrive.
使你写的正则表达式尽可能通用,要求能够匹配多个单词的街道名字,
如:3120DelaCruzBoulevard.
pattern=[\d]+\[A-Za-z\]+
Ps:1180BordeauxDriveofNewYork呢?
6.匹配简单的以“”开头,以“.com”作结尾的Web域名,例如:
附加题:使你写的正则表达式还支持其他顶级域名:.edu,.net等,比如:
pattern=w{3}\.[\w]+\.[\w]+
Ps:seach与match的差别?
7.匹配全体Python整数的字符串表示形式的集合
pattern=\d+
8.匹配全体Python长整数的字符串表示形式的集合
pattern=\d+[L]?
9.匹配全体Python浮点数的字符串表示形式的集合
pattern=\d+\.\d*
10.匹配全体Python复数的字符串表示形式的集合
pattern=\d*\.?\d*\+\d*\.?\d*j
11.匹配所有合法的电子邮件地址(先写出一个限制比较宽松的正则表达式,然后尽可能加强限制条件,但要保证功能的正确性)。
pattern=\w+\@\w+\.\w+
12.匹配所有合法的Web网站地址(URLs)(先写出一个限制比较宽松的正则表达式,然后尽可能加强限制条件,但要保证功能的正确性)。
pattern=\.\w+\.\w+
13.type().type()内建函数返回一个对象类型,此对象显示为Python的字符串形式,
如下所示:
>>>type(0)
>>>type(.34)
>>>type(dir)
请写一个正则表达式,能从这个字符串中提取出类型的名字。你的函数能实现以下功能:如
本文来自电脑杂谈,转载请注明本文网址:
http://www.pc-fly.com/a/jisuanjixue/article-28452-1.html