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次

先写到这里,要下班了。后面继续。。。😀

上一篇下一篇

猜你喜欢

热点阅读