正则表达式详解
正则表达式 英文名称叫 ==Regular Expression==简称RegEx,是用来匹配字符的一种工具,它常被用在网页爬虫,文稿整理,数据筛选等方面,最常用的就是用在网页爬虫,数据抓取。
一、正则表达式的各种符号解释
(来自维基百科)~
是不是感觉太多了,因此我将常用的整理出来了
二、进行逐个详解
1.首先导入模块
1 | import re |
2.匹配多种可能 使用 []
1 | #'run' or 'ran' |
3.匹配数字 \d and \D
1 | # \d : decimal digit 数字的 |
4.匹配空白 \s and \S
1 | # \s : any white space [\t \n \r \f \v] |
5.匹配所有的字母和数字以及”_” \w and \W
1 | # \w : [a-zA-Z0-9_] |
6.匹配空白字符 \b and \B
1 | # \b : (only at the start or end of the word) |
7.匹配特殊字符 任意字符 \ and .
1 | # \\ : 匹配 \ |
8.匹配句尾句首 $ and ^
1 | # ^ : 匹配line beginning |
9. 是否匹配 ?
1 | # ? : may or may nt occur |
10. 多行匹配 re.M
1 | # 匹配代码后面加上re.M |
11. 匹配零次或多次 *
1 | # * : occur 0 or more times |
12. 匹配一次或多次 +
1 | # + :occur 1 or more times |
13. 可选次数匹配 {n, m}
1 | # {n, m} : occur n to m times |
14. 匹配后group组输出
1 | # group |
15.寻找所有匹配 findall
1 | # re.findall() |
16.替换匹配内容 sub
1 | # re.sub( ,replace, ) |
17. 分裂内容 split
1 | # re.split() |
18. 包装正则表达式 compile
1 | # re. compile() |
三、归总一些常见的正则表达式
(1)、校验数字的表达式
1 | 1、数字:^[0-9]*$ |
(2)、校验字符的表达式
1 | 1、汉字:^[\u4e00-\u9fa5]{0,}$ |
(3)、特殊需求表达式
1 | 1、Email地址:^\w+([-+.]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*$ |