掌握正则表达式
1 正则表达式的7个境界
1.1 level1_固定的字符串
要求:确定字符串中是否有123456
import re
text = '张三身高:199,体重300,学号123456,密码936'
print(re.findall(r'123456', text))
==================================================
运行结果:
['123456']
代码说明:
- 第1行,引入正则表达式模块re
- 第3行,使用re的findall()方法找到所有符合模式的字符串,这里的模式就是123456,也就是说找到字符串中所有的123456
- findall()方法的第1个参数是模式,第2个参数是要查找的字符串
- 模式中会有一些特殊字符,所以用r表示这是一个raw字符串,让Python不要去转义里面的特殊字符
上面程序的运行结果是:[123456],因为整个字符串中就1个123456
level1就是一个固定的字符串匹配,可以用传统的字符串匹配解决
1.2 level2_某一类字符
要求:找出所有的单个的数字
text = '张三身高:199,体重300,学号123456,密码936'
print(re.findall(r'\d', text))
==================================================
运行结果:
['1', '9', '9', '3', '0', '0', '1', '2', '3', '4', '5', '6', '9', '3', '6']
这个表达式\d表示所有的数字,所以1,7,8,1,6,8等都可以匹配到。这是很简单的模式,只匹配1个单独的数字
找1到5的数字
text = '张三身高:199,体重300,学号123456,密码936'
print