一、re.match
从开始位置开始匹配,只返回匹配成功的一个实例
- group(n):返回第n个分组所匹配的内容,其中 n ≥ 1 n\geq1 n≥1
- group(0):返回被模式串匹配的部分
- groups():返回所有分组匹配的内容
二、re.search
搜索整个字符串,只要找到第一个和模式串匹配的字符串就停止
三、re.findall
搜索整个字符串,以列表形式返回所有匹配的字符串
提取所有的数字
四、re.sub
sub(模式串,目标串,原字符串),返回匹配的结果串
1. 直接替换原串
2. 根据原串构造目标串并替换
此时需要将一个函数传给第二个参数,函数的参数是正则表达式匹配的结果,返回值是目标串
五、re.split
根据所给字符且分字符串
六、贪婪模式
由于正则表达式默认是贪婪的,故
.
+
.+
.+ 会尽可能多的匹配字符,留尽可能少的字符给后面的正则表达式匹配,所以第一个\d+只匹配了一个数字字符,其他的都被
.
+
.+
.+ 抢走
关闭贪婪匹配
此时 . + .+ .+ 尽可能少的匹配字符,尽可能多的将字符留给后面的正则表达式,所以把所有的字符留给了\d+
比较贪婪与非贪婪