【Python3 爬虫学习笔记】基本库的使用 12—— 正则表达式 5

6. compile()

compile()方法可以将正则字符串编译成正则表达式对象,以便在后面的匹配中复用。示例代码如下:

import re

content1 = '2016-12-15 12:00'
content2 = '2016-12-17 12:55'
content3 = '2016-12-22 13:21'
pattern = re.compile('\d{2}:\d{-2}')
result1 = re.sub(pattern, '', content1)
result2 = re.sub(pattern, '', content2)
result3 = re.sub(pattern, '', content3)
print(result1, result2, result3)

假如这里有3个日期,我们想分别将3个日期中的时间去掉,这时可以借助sub()方法。该方法的第一个参数是正则表达式,但是这里没有必要重复写3个同样的正则表达式,此时可以借助compile()方法将正则表达式编译成一个正则表达式对象,以便复用。
运行结果如下:

2016-12-15 12:00 2016-12-17 12:55 2016-12-22 13:21

另外,compile()还可以传入修饰符,例如re.S等修饰符,这样在search()、findall()等方法中就不需要额外传了。所以,compile()方法还可以说是正则表达式做了一次封装,以便我们更好地复用。

猜你喜欢

转载自blog.csdn.net/htsait4113/article/details/82794694