正则表达式
正则表达式是一门独立的语言 跟其他编程语言都没有关系!!
如果想在python 代码中使用正规 需要借助于妹纸模块re
1、什么是正则表达式?
利用一些特殊符号的组合去字符串中筛选出符合条件的数据
eg:
""" 1.必须是11位 2.必须是纯数字 3.必须符合手机号的排布 15 16 18 19 """ import re phone_number = input('请输入您的手机号') if re.match('^(13|14|15|18)[0-9]{9}$',phone_number): print('是合法的手机号码') else: print('不是合法的手机号码')
字符组
特征:
是使用中括号括起来的 字符串默认只能单个字符匹配
[01234567889]#匹配0到9之间任何一个数字
可以简写[0-9]
[a-z]#匹配小写字母a到字母z其中任意一个字母
[A-Z]#匹配大侠字母中的任意一个字母
特殊符号默认也只能单个单个字符匹配 . 匹配除换行符意外的任意字符 \d 匹配数字 ^ 匹配字符串的开始 $ 匹配字符串的结尾 """^ and $组合使用可以精准限制要查找的数据“”“ a|b 匹配字符a或字符b () 匹配括号内的表达式也表示一个组(不会影响正则表达式的匹配单纯的分组而已) [...] 匹配字符组中的字符 [^...] 匹配除了数字组中字符的所有的字符
量词 1.表达式在没有量词修饰的情况下 都是单个但个匹配 2.量词必须结合(字符串,特殊符合等)一次使用 不能单独出现 3.量词只能影响前面的一个表达式(ab+ 只能影响b) * 重复零次或更多次 + 重复一次或更多次 ? 重复一次或0次 {n} 重复n次 {n,} 重复n 次或更多次 {n,m} 重复n 到m 次 """正则表达式中的量词默认都是'贪婪匹配'""" ### 贪婪匹配与非贪婪匹配 ```python # 带匹配的字符串 <script>123</script> # 正则表达式 <.*> '''默认贪婪匹配 尽可能多的匹''' # 将贪婪变为非贪婪 只需要在量词的后面加问号即可 <.*?> '''非贪婪匹配 尽可能少的匹 结束条件有左右两边决定''' ``` ###

浙公网安备 33010602011771号