python使用正则表达式re
被用来检索\替换那些符合某个模式(规则)的文本,对于文本过滤或规则匹配,最强大的就是正则表达式,是python爬虫里必不可少的神兵利器。
基本匹配规则:
[0-9] 任意一个数字,等价\d
[a-z] 任意一个小写字母
[A-Z]任意一个大写字母
[^0-9] 匹配非数字,等价\D
\w 等价[a-z0-9_],字母数字下划线
\W 等价对\w取非
. 任意字符
[] 匹配内部任意字符或子表达式
[^] 对字符集合取非
*匹配前面的字符或者子表达式0次或多次
+匹配前一个字符至少1次
? 匹配前一个字符0次或多次
^ 匹配字符串开头
$ 匹配字符串结束
Python使用正则表达式
Python的re模块
pattern 编译好的正则表达式
几个重要的方法:
match: 匹配一次从开头;
search: 匹配一次,从某位置;
findall: 匹配所有;
split: 分隔;
sub: 替换;
需要注意的两种模式:
贪婪模式:(.*)
懒惰模式:(.*?)