Python3爬虫之正则表达式与re库
目录
在之前我已经写过通用正则表达式的blog,是用js实现的,但不影响大家对正则表达式本身的学习,如果没有正则表达式相关学习经验的,可以参考一下
下面主要讲解re模块常用的几个函数
re模块常用函数
search
在字符串中找满足条件的字符,如果找到就返回,但是只能找到第一个匹配上的字符
import re
text = 'apple price $99 orange price $88'
ret = re.search('\d+',text)
#group:匹配正则表达式的整体结果
print(ret.group())
>> 99
分组
在正则表达式中,可以对过滤到的字符串进行分组
分组使用圆括号的方式
- group:和group(0)是等价的,返回的是整个满足条件的字符串
- groups:返回的是里面的子组,索引从1开始
- group(1):返回的是第一个子组、可以传入多个
import re
text = 'apple price is $99,orange price is $10'
#\$中的\表示转义
#.* 表示所有匹配,左右加正则可以限定位置
ret = re.search(".*(\$\d+).*(\$\d+)",text)
#group:匹配正则表达式的整体结果
print(ret.group())
print(ret.group(0))
print(ret.group(1))
print((ret.group