python——正则表达式
正则表达式的概念
正则表达式是对字符串操作的一种逻辑公式,就是用事先定义好的一些特定字符、及这些特定字符的组合,组成一个“规则字符串”,这个“规则字符串”用来表达对字符串的一种过滤逻辑。
python将正则表达式放在了re模块
正则表达式的用处及重要性
广泛应用于爬虫领域、大数据领域。
不仅仅在python领域,在整个程序设计领域都有很重要的地位。
字符串在线试验切割工具
http://tool.chinaz.com/regex/
用法:
- 带有(\w+.){2}\w+字符的输入框输入匹配格式
- 带有tool.chinaz.com|888字符串的输入框输入待匹配的字符串
- 如果匹配有结果,下方广告处会立即生成一个结果框
正则表达式中的字符组:
[字符组]
正则表达式 | 待匹配字符 | 匹配结果 | 解释 |
---|---|---|---|
[0123] | sdfa34 | 3 | 在一个字符组中放入字符,任意一个字符和待匹配字符相同都视为匹配成功 |
[453] | safd | 无结果 | 因为字符组中没有,匹配不到 |
[0-9] | 4 | 4 | [0-9]等价[0123456789] |
[a-z] | sd32 | sd | [a-z]代表所有小写字母 |
[A-Z] | sfSDF | SDF | [A-Z]代表所有大写字母 |
[A-Z0-8a-t] | af243FG | af243FG | 可以匹配到所有大写字母,数字0到8,小写字母a到t |
正则表达式中的字符:
字符 | 匹配内容 | |
---|---|---|
1 | . | 除换行符以外的所有字符 |
2 | \w | 字母或数字或下划线 |
3 | \s | 任意的空白符 |
4 | \d | 数字 |
5 | \W | 非字母或数字或下划线 |
6 | \D | 非数字 |
7 | \S | 非空白符 |
8 | \n | 一个换行符 |
9 | \t | 一个制表符 |
10 | \b | 一个单词的结尾 |
11 | ^ | 字符串的开始 |
12 | $ | 字符串的结尾 |
13 | a|b | 字符a或字符b |
14 | () | 括号内的表达式,也表示一个组 |
15 | […] | 字符组中的字符 |
16 | [^…] | 除了字符组中字符的所有字符 |
正则表达式中的量词
量词 | 用法 | |
---|---|---|
1 | * | 重复0次或多次 |
2 | + | 重复依次或多次 |
3 | ? | 重复0次或1次 |
4 | {n} | 重复n次 |
5 | {n,} | 重复n次或多次 |
6 | {n,m} | 重复n到m次 |
用法举例
. 放在字符后面
正则表达式 | 待匹配的字符串 | 匹配结果 |
---|---|---|
. | agfdsa | agfdsa |
^ 放在字符的前面
正则表达式 | 待匹配的字符串 | 匹配结果 |
---|---|---|
^a | agfdsa | a |
$ 放在字符后面
正则表达式 | 待匹配的字符串 | 匹配结果 |
---|---|---|
s$ | agfdsa |
最近才从csdn迁徙到博客园,欢迎关注交流!
代码改变世界!