龙空技术网

也许这有你想知道Python正则校验的最全实现

软件测试开发技术栈 470

前言:

当前你们对“python正则ip”大致比较重视,兄弟们都想要知道一些“python正则ip”的相关知识。那么小编同时在网摘上汇集了一些有关“python正则ip””的相关资讯,希望朋友们能喜欢,朋友们一起来学习一下吧!

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

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 校验固化号码;

示例如下:

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})$"

代码示例:

示例如下:

端口号校验

端口号正则表达式

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

代码示例:

示例如下:

经度校验

经度正则表达式

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})$"

代码示例:

示例如下:

纬度校验

纬度正则表达式

 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})$"

代码示例:

示例如下:

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"(?<![:.w])(?:[A-F0-9a-f]{1,4}:){7}[A-F0-9a-f]{1,4}(?![:.w])$"

代码示例:

parrtern=0 IP(v4/v6)校验 ; parrtern=1 IPV4校验 ; parrtern=2 IPV6校验

示例如下:

姓名校验

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

姓名正则表达式

u"(^[\u4e00-\u9fa5]{2:})|(^[\u4e00-\u9fa5]+(·[\u4e00-\u9fa5]+)*$)"

代码示例:

示例如下:

QQ号码校验

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

QQ号码正则表达式

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

代码示例:

示例如下:

邮件地址校验

邮箱正则表达式

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

代码示例:

示例如下:

居住地址校验

地址正则表达式

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

代码示例:

示例如下:

域名校验

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

域名正则表达式

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

代码示例:

示例如下:

车牌号码校验

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

车牌正则表达式

u"^(([京津沪渝冀豫云辽黑湘皖鲁新苏浙赣鄂桂甘晋蒙陕吉闽贵粤青藏川宁琼使领][a-zA-Z]|[\u4e00-\u9fa5]{2}d{2}[-]?|[\u4e00-\u9fa5]{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])$"

代码示例:

示例如下:

IMEI校验(非正则)

示例如下:

银行卡号校验

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

银行卡正则表达式

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

代码示例:

示例如下:

标签: #python正则ip