python爬虫之正则表达式(RE)
什么是正则表达式?
正则表达式,又称规则表达式,(Regular Expression,在代码中常简写为regex、regexp或RE),是一种文本模式,包括普通字符(例如,a 到 z 之间的字母)和特殊字符(称为"元字符"),是计算机科学的一个概念。正则表达式使用单个字符串来描述、匹配一系列匹配某个句法规则的字符串,通常被用来检索、替换那些符合某个模式(规则)的文本。
RE的优缺点
优点:速度快,效率高,准确度高
缺点:新手入手难度大
在线测试正则表达式的网址
https://tool.oschina.net/regex
元字符
定义:具有固定含义的特殊符号
常用元字符:
. 匹配除了换行符以外的任意字符(ps:一个.只能匹配一个;但两个.能匹配两个)
\w 匹配字母,数字或下划线
\s 匹配任意的空白符
\d 匹配数字
\n 匹配一个换行符
\t 匹配一个制表符
^ 匹配字符串的开始
$ 匹配字符串的结尾
\W 匹配非字母,数字或下滑线
\S 匹配非任意的空白符
\D 匹配非数字
a|b 匹配a或b
() 匹配括号内的表达式,也表示一个组
[...] 匹配字符组中的字符(ps:'-'在这里指的是到,例如a-z,A-Z)
[^...] 匹配字符组中除字符的所有字符
量词
定义:控制前面的元字符出现的次数
* 重复零次或更多次
+ 重复一次或更多次
? 重复零次或一次
{n} 重复n次
{n,} 重复n次或更多次
{n, m} 重复n次到m次
贪婪匹配和惰性匹配
.* 贪婪匹配
.*? 惰性匹配
&spm=1001.2101.3001.5002&articleId=128766717&d=1&t=3&u=595bed6f8e264f348cb571a5bfff12dc)
637

被折叠的 条评论
为什么被折叠?



