1. 通过re.compile生成正则表达式对象
2. 调用正则表达式对象的match或者search方法生成match或search对象
3. 判断match或search对象对否为None,如果不为None,通过group方法获取分组匹配字符串。
注意: 如果不做判断的话,当匹配失败调用group方法会报异常(AttributeError: 'NoneType' object has no attribute 'group')退出。
$cat html
6日星期一
白天
高温 33℃
夜间
低温 25℃
$cat 1.py
#!/usr/bin/python
import re
result=""
file = open("html")
# 将正则表达式编译成Pattern对象
p1 = re.compile(">([^<]*)")
p2 = re.compile(">([^<]*)")
p3 = re.compile(">([^<]*)")
for line in file:
#使用Pattern匹配文本,获得匹配结果
s1 = p1.search(line)
s2 = p2.search(line)
s3 = p3.search(line)
#匹配失败时将返回None,匹配成功时试用group来获取分组信息
if s1:
result = s1.group(1) + "\n"
elif s2:
result += s2.group(1) + " "
elif s3:
result += s3.group(1) + "\n"
print result