手机号码正则_也许这有你想知道Python正则校验的最全实现

947fdcedfb9f57ab1efd2ef0867dceeb.png

正则表达式是一个特殊的字符序列,它能时我们方便的检查一个字符串是否与某种模式匹配。

Python 自1.5版本起增加了re 模块,它提供 Perl 风格的正则表达式模式。

re 模块使 Python 语言拥有全部的正则表达式功能。

本文主要使用re模块介绍如下数据类型的准确性校验。

  • 电话号码
  • IP地址
  • MAC地址
  • 端口号
  • 经度
  • 纬度
  • 姓名
  • 车辆牌照
  • QQ号码
  • 邮箱地址
  • 居住地址
  • 域名
  • 银行卡号
  • IMEI

手机号码&固话号码校验

手机正则表达式

r"^[1][3-9][0-9]{9}$"

86手机正则表达式

r"(^+86|86|[86]|(86)|+0086|0086|[0086]|(0086))(s[1]|[1])[345678][0-9]{9}$"

电话正则表达式

r"^[4,8,0][0-9]{2,3}(-[0-9]{7,8}$|(s)[0-9]{7,8}$|[0-9]{7,8}$)"

代码示例:

  • pattern=0 校验电话号码(手机号码+固话号码);
  • pattern=1 校验手机号码 ;
  • pattern=2 校验固化号码;
07ae69cbec7fad7b96c3f59033a193fc.png

示例如下:

1a5abc5e8ba152f1afb492a256e486c5.png

MAC地址校验

支持“-”、“:” 、“.”以及无间隔符 四种格式校验。

MAC正则表达式:

r"^([0-9A-Fa-f][0、2、4、6、8、A、C、E][-:.]{0,1})([0-9A-Fa-f]{2}[-:.]{0,1}){4}([0-9A-Fa-f]{2})$"

代码示例:

82bac6a80a627f4728670cbedb913c2d.png

示例如下:

3e28986c3f2ae1e4b2baab302a47bd09.png

端口号校验

端口号正则表达式

r"^([0-9]|[1-9]d{1,3}|[1-5]d{4}|6[0-5]{2}[0-3][0-5])$"

代码示例:

eea0f6581e180b62f67b80e8991f5892.png

示例如下:

143ea646e79ae6e213efb6452bf24e01.png

经度校验

经度正则表达式

r"^[-+]?(0?d{1,2}|0?d{1,2}.d{1,15}|1[0-7]?d{1}|1[0-7]?d{1}.d{1,15}|180|180.0{1,15})$"

代码示例:

d9bac75746c8bfe6fa346b792066a442.png

示例如下:

2184420ce8eec5db49b93b95911fccb9.png

纬度校验

纬度正则表达式

 r"^[-+]?(0?d{1,2}|0?d{1,2}.d{1,15}|1[0-7]?d{1}|1[0-7]?d{1}.d{1,15}|180|180.0{1,15})$"

代码示例:

2f7e280ee6b8097360fa21e1528df607.png

示例如下:

923cfdb5dfab17266cb60f6d10fa1a38.png

IP地址校验

IPV4正则表达式

r"^(?:(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?).){3}(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)$"

IPV6正则表达式

r"(?

代码示例:

  • parrtern=0 IP(v4/v6)校验 ;
  • parrtern=1 IPV4校验 ;
  • parrtern=2 IPV6校验
548f4f6cb8d80cbd50313adbb72f137e.png

示例如下:

a7c4a93b82155f8cb358a70aa4c694da.png

姓名校验

包含少数民族·格式的姓名校验

姓名正则表达式

u"(^[一-龥]{2:})|(^[一-龥]+(·[一-龥]+)*$)"

代码示例:

df5884c766428936c8c7771c91bf5ab2.png

示例如下:

eb1d9195651b4b640d529914e016beb5.png

QQ号码校验

首位不为0的5~12位数字组合。

QQ号码正则表达式

u"^[1-9][0-9]{4,11}$"

代码示例:

236ed65b2864660a0c6b64f387d96383.png

示例如下:

d0a10c15c814a4f6acbf164bab938fbc.png

邮件地址校验

邮箱正则表达式

u"^[A-Za-z1-9][w.-]+@(w+.)+[a-zA-Z]{2,3}$"

代码示例:

21f24bb955b431a62b37656577f06e41.png

示例如下:

19bc3c5a25df84995f8f8bdd38729fae.png

居住地址校验

地址正则表达式

u"^(?=.*?[一-龥])[0-9A-Za-z一-龥-s]+$"

代码示例:

7fc5e6ae2d4713f279cc2b130efb29f3.png

示例如下:

dcf27f45b19cc60170e1f4fa7cb8f0f2.png

域名校验

由多个标号组成的完整域名总共不超过255个字符。

域名正则表达式

u"(?=^.{3,255}$)^[a-zA-Z0-9][-a-zA-Z0-9]{0,62}(.[a-zA-Z0-9][-a-zA-Z0-9]{0,62})+.?$"

代码示例:

fd094bd41843eebcae010b69d97161ad.png

示例如下:

31dd870741965b54c1af9ee2258aa6dd.png

车牌号码校验

车牌号码校验,支持校验武警车牌、军牌、民用车牌、使馆车牌、新能源车牌、农用车辆及拖拉机车牌号。

车牌正则表达式

u"^(([京津沪渝冀豫云辽黑湘皖鲁新苏浙赣鄂桂甘晋蒙陕吉闽贵粤青藏川宁琼使领][a-zA-Z]|[一-龥]{2}d{2}[-]?|[一-龥]{2}[a-zA-Z])[-]?|[京津沪渝冀豫云辽黑湘皖鲁新苏浙赣鄂桂甘晋蒙陕吉闽贵粤青藏川宁琼][0-9]{2}[-]?|([wW][Jj][京津沪渝冀豫云辽黑湘皖鲁新苏浙赣鄂桂甘晋蒙陕吉闽贵粤青藏川宁琼][-]?)|([a-zA-Z]{2}))([A-Za-z0-9]{5}|[A-Za-z0-9]{4}[A-Z0-9挂警港澳领学]|[DdFf][A-HJ-NP-Za-hj-np-z0-9][0-9]{4}|[0-9]{5}[DdFf])$"

代码示例:

049f59257c2c69b20eac15f27b94b327.png

示例如下:

07ce5d7357367d2b39c9f257c4efd37b.png

IMEI校验(非正则)

65dc5768808e11af7b2774ab43716db6.png

示例如下:

1338066f577fcfac953c312c447f536f.png

银行卡号校验

银联规范里面明确,银行卡位数为13~19位。

银行卡正则表达式

u"(?=^d{13,19}$)^([1-9])([0-9]{12,18})$"

代码示例:

28f6be1fc5a0e7a61ff79e8a7b2ee377.png

示例如下:

a59ebc0852eeff0397feece2c7bb07c5.png

  • 1
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值