限定的匹配规则

import re
#*匹配 前一个字符出现0次或者 无限次即可有可无

res=re.match(’[A-Z][a-z]*’,‘Tom’)

print(res.group())

+匹配 前一个字符出现1次或者无限次,即至少有1次

res=re.match(’[a-zA-Z]+’,‘TTom’)

print(res.group())

#匹配符合规范[规则是:不能以数字开头,只能包含字母、数字、下划线]

result=re.match(’[a-zA-Z_]+[\w]*’,‘name’)

print(result.group())

?告诉引擎匹配前导字符 0次或者 一次,事实上表示前导字符 是可以选择的

result=re.match(’[a-zA-Z_][0-9]?’,‘n4a99_me’)

print(result.group())

#{min,max}告诉引擎匹配前导字符min次到max次,min和max必须都是非负整数
#{count}精确匹配

result=re.match(’\d{4}’,‘123456’)

#{min,}max被省略的话表示max没有限制了

result=re.match(’\d{4,}’,‘123456’)

result=re.match(’\d{4,8}’,‘123456789’)

if result:

print(‘匹配到%s’%result.group())

#匹配邮箱的正则

reg=re.match(’[a-zA-Z0-9]{6,11}@qq.com’,‘1934801322@qq.com’)

if reg:

print(‘匹配成功%s’%reg.group())

#\转译

my=‘E:\1yun\2个人笔记’

my=‘E:\1yun\2个人笔记’#使用\转译路径

print(my)

print(re.match(‘c:\a.txt’,‘c:\a.txt’).group())

print(re.match(‘c:\\a.txt’,‘c:\a.txt’).group())

#在正则前面加r表示原生的字符串。python字符串就不转译

print(re.match(r’c:\a.txt’,‘c:\a.txt’).group())

#^匹配字符串的开头

res=re.match(’^P.*’,‘Python is like’)

res=re.match(’^P\w{5}’,‘Python is like’)

if res:

print(res.group())

$ 匹配以什么结尾

res=re.match(’[\w]{5,13}@[\w]{2,3}.com$’,‘1934801322@qq.com’)
if res:
print(res.group())

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值