*正则*
*元字符*
*表达式* | *匹配* |
---|---|
. | 小数点可以匹配除了换行符\n以外的任意一个字符 |
| | 逻辑或操作符 |
[] | 匹配字符集中的一个字符 |
[^] | 对字符集求反,也就是上面的反操作。尖号必须在方括号里的最前面 |
- | 定义[]里的一个字符区间,例如[a-z] |
\ | 对紧跟其后的一个字符进行转义 |
() | 对表达式进行分组,将圆括号内的内容当做一个整体,并获得匹配的值 |
**转义字符**
\1. 把原本的意义去掉。 “.”任意-----“.”
\2. 添加意义 “t”-----“\t”制表符
*表达式* | *匹配* |
---|---|
\r, \n | 匹配回车和换行符 |
\t | 匹配制表符 |
\ | 匹配斜杠\ |
\^ | 匹配^符号 |
$ | 匹配$符号 |
. | 匹配小数点. |
*预定义匹配字符*
*表达式* | *匹配* |
---|---|
\d | 任意一个数字,0~9中的任意一个 |
\w | 任意一个字母或数字或下划线,也就是A~Z,a~z,0~9,_ 中的任意一个 |
\s | 空格、制表符、换页符等空白字符的其中任意一个 |
\D | \d的反集,也就是非数字的任意一个字符,等同于\d |
\W | \w的反集,也就是\w |
\S | \s的反集,也就是\s |
#\d 匹配数字0-9
a= re.findall("\d","red84")
print(a) #['8', '4']
#\D \d相反,\d不要的,\D要
a= re.findall("\D","red84")
print(a) #['r', 'e', 'd']
#\w 匹配字母、数字、下划线