Python种的正则表达式
2019-01-04 本文已影响6人
爆炸的白菜君
正则一直让我头疼,其他人都说很简单啊。🙄花点时间来专心看看正则。
python中使用正则需要导入一个模块re
正则匹配的几个函数
match : 从头开始匹配
search : 不需要从头开始匹配
print(re.match('www', 'www.runoob.com'))
# 返回正则匹配结果对象
print(re.match('com', 'www.runoob.com'))
# 返回none
. 匹配非换行符 \n之外的所有单字符
* 匹配*号前面的字符,0次或者多次
+ 匹配+号前面的字符,1次或者多次
? 匹配前面的子表达式零次或一次,或指明一个非贪婪限定符
这里引入一个概念 贪婪限定
用一个🌰来解释这个概念
#!/usr/bin/python
import re
line = "<H1>Chapter 1 - 介绍正则表达式</H1>"
matchObj = re.match( '/<.*>/', line, re.M|re.I)
#结果是<H1>Chapter 1 - 介绍正则表达式</H1>
matchObj = re.match( '/<.*?>/', line, re.M|re.I)
#结果是<H1>
* 和 + 都是贪婪的,想尽可能匹配多的字符串,当加上 ? 以后就变成非贪婪的匹配因为 ? 本身就是匹配0次或者1次
先写到这里,要下班了。后面继续。。。😀