在学习python网络爬虫时用到的正则表达式
2017-03-15 17:14
585 查看
符号
含义
例子
匹配结果
*
匹配前面的字符、子表达式或括号里的字符 0 次或多次
a*b*
aaaaaaaa,aaabbbbb,bbbbbb
+
匹配前面的字符、子表达式或括号里的字符至少 1 次
a+b+
aaaaaaab,aaabbbbb,abbbbbb
[]
匹配任意一个字符(相当于“任选一个”)
[A-Z]*
APPLE,CAPITALS,QWERTY
()
表达式编组(在正则表达式的规则里编组会优先运行)
(a*b)*
aaabaab,abaaab,ababaaaaab
{m,n}
匹配前面的字符、子表达式或括号里的字符 m 到 n 次(包含 m 或 n)
a{2,3}b{2,3}
aabbb,aaabbb,aabb
[^]
匹配任意一个不在中括号里的字符
[^A-Z]*
apple,lowercase,qwerty
|
匹配任意一个由竖线分割的字符、子表达式(注意是竖线,不是大字字母I)
b(a|i|e)d
bad,bid,bed
.
匹配任意单个字符(包括符号、数字和空格等)
b.d
bad,bzd,b$d,b d
^
指字符串开始位置的字符或子表达式
^a
apple,asdf,a
\
转义字符(把有特殊含义的字符转换成字面形式)
\.\ | \\
. | \
$
经常用在正则表达式的末尾,表示“从字符串的末端匹配”。如果不用它,每个正则表达式实际都带着“.*”模式,只会从字符串开头进行匹配。这个符号可以看成是 ^ 符号的反义词
[A-Z]*[a-z]*$
ABCabc,zzzyx,Bob
?!
“不包含”。这个奇怪的组合通常放在字符或正则表达式前面,表示字符不能出现在目标字符串里。这个符号比较难用,字符通常会在字符串的不同部位出现。如果要在整个字符串中全部排除某个字符,就加上 ^ 和 $ 符号
^((?![A-Z]).)*$
no-caps-here,$ymb0ls a4e f!ne
含义
例子
匹配结果
*
匹配前面的字符、子表达式或括号里的字符 0 次或多次
a*b*
aaaaaaaa,aaabbbbb,bbbbbb
+
匹配前面的字符、子表达式或括号里的字符至少 1 次
a+b+
aaaaaaab,aaabbbbb,abbbbbb
[]
匹配任意一个字符(相当于“任选一个”)
[A-Z]*
APPLE,CAPITALS,QWERTY
()
表达式编组(在正则表达式的规则里编组会优先运行)
(a*b)*
aaabaab,abaaab,ababaaaaab
{m,n}
匹配前面的字符、子表达式或括号里的字符 m 到 n 次(包含 m 或 n)
a{2,3}b{2,3}
aabbb,aaabbb,aabb
[^]
匹配任意一个不在中括号里的字符
[^A-Z]*
apple,lowercase,qwerty
|
匹配任意一个由竖线分割的字符、子表达式(注意是竖线,不是大字字母I)
b(a|i|e)d
bad,bid,bed
.
匹配任意单个字符(包括符号、数字和空格等)
b.d
bad,bzd,b$d,b d
^
指字符串开始位置的字符或子表达式
^a
apple,asdf,a
\
转义字符(把有特殊含义的字符转换成字面形式)
\.\ | \\
. | \
$
经常用在正则表达式的末尾,表示“从字符串的末端匹配”。如果不用它,每个正则表达式实际都带着“.*”模式,只会从字符串开头进行匹配。这个符号可以看成是 ^ 符号的反义词
[A-Z]*[a-z]*$
ABCabc,zzzyx,Bob
?!
“不包含”。这个奇怪的组合通常放在字符或正则表达式前面,表示字符不能出现在目标字符串里。这个符号比较难用,字符通常会在字符串的不同部位出现。如果要在整个字符串中全部排除某个字符,就加上 ^ 和 $ 符号
^((?![A-Z]).)*$
no-caps-here,$ymb0ls a4e f!ne
相关文章推荐
- [Python] 网络爬虫和正则表达式学习总结
- Python 网络爬虫 009 (编程) 通过正则表达式来获取一个网页中的所有的URL链接,并下载这些URL链接的源代码
- python3实现网络爬虫(6)--正则表达式和BeautifulSoup配合使用
- Python爬虫学习纪要(五):正则表达式2
- Python爬虫学习纪要(四):正则表达式1
- Python 爬虫学习笔记之正则表达式
- Python:入门到实现网络爬虫 Day4 --正则表达式
- Python基础学习——正则表达式与第一个爬虫(requests)
- Python爬虫学习---5分钟掌握正则表达式
- [置顶] Python爬虫学习(四)正则表达式
- python爬虫学习(1)--关于正则表达式输入和提取中文
- python之正则表达式以及网络爬虫
- python爬虫学习三:python正则表达式
- Python 网络爬虫-正则表达式、BeautifulSoup、lxml三种提取方法
- python爬虫之正则表达式学习笔记一
- Python爬虫包 BeautifulSoup 学习(九) 正则表达式与Lambda表达式
- Python--正则表达式/单线程网络爬虫
- python爬虫学习---正则表达式的使用
- 【python爬虫专题】解析方法 <3> 正则表达式学习
- python网络爬虫之正则表达式(续)