正则表达式的常用场景

import re

#一、 4到16位(字母,数字,下划线,减号)
if re.match(r'^[a-zA-Z0-9_-]{4,16}$', "abwc"):
	print("匹配1")

######################################################

#二、 密码强度正则,最少6位,包括至少1个大写字母,1个小写字母,1个数字,1个特殊字符
if re.match(r'^(?=.*?[A-Z])(?=.*?[a-z])(?=.*[0-9])(?=.*[!@#$%^&*()-]).{6,}$','Ad2-@jb'):
    print('匹配2')


######################################################
# 三、整数正则,分正负
# 正整数原则
if re.match(r'^\d+$','23'):
    print('匹配3-正整数')

# 负整数原则
if re.match(r'^-\d+$', '-23'):
    print('匹配3-负整数')

# 整数原则
if re.match(r'^-?\d+$', '23'):
    print('匹配3-整数')

######################################################
# 四、小数正则,分正负
# 正小数原则
if re.match(r'^\d+\.\d+$','23.67'):
    print('匹配4-正小数')

# 负小数原则
if re.match(r'^-\d+\.\d+$', '-23.78'):
    print('匹配4-负小数')

# 小数原则
if re.match(r'^-?\d+\.\d+$', '23.89'):
    print('匹配4-小数')

#####################################################

# 五、邮箱

if re.match(r'^([A-Za-z0-9_\-\.])+\@([A-Za-z0-9_\-\.])+\.([A-Za-z]{2,4})$', "153522217@qq.com"):
	print("匹配5")

######################################################
# 六、手机号
if re.match(r'^(13[0-9])|(14[57])|(15[0-35-9])|(17[78])|(18[0-9])\d{8}$','14578789090'):
    print('匹配6')

##########################################################
# 七、身份证号(18位)正则 345667-19901212-3456
if re.match(r'^[1-9]\d{5}(18|19|[23]\d)\d{2}[0-1][0-9][0-3][0-9]\d{3}[0-9Xx]$','12345619900909889x'):
    print('匹配7')

##########################################################
# 八、车牌号正则
if re.match(r'^[京津沪渝冀豫云辽黑湘皖鲁新苏浙赣鄂桂甘晋蒙陕吉闽贵粤青藏川宁琼使领A-Z]{1}[A-Z]{1}[A-Z0-9]{4}[A-Z0-9挂学警港澳]{1}$',"京K39006"):
	print("匹配8")

##########################################################
# 九、匹配中文
if re.match(r'[\u4E00-\u9FA5]+',"中"):
	print("匹配9")

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值