网站首页 > java教程 正文
正则表达式是一个特殊的字符序列,它能时我们方便的检查一个字符串是否与某种模式匹配。
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})$"
代码示例:
示例如下:
?
猜你喜欢
- 2024-10-19 java正则表达式入坑指南(java正则表达式用法)
- 2024-10-19 js正则表达式验证大全(js正则表达式用法)
- 2024-10-19 使用Annotation注解在实体类中进行参数校验
- 2024-10-19 vue正则验证汇总(手机号、密码、正整数、邮箱、身份证等)
- 2024-10-19 SpringBoot分组校验及自定义校验注解
- 2024-10-19 统一参数校验validator 从使用到走向自定义参数校验
- 2024-10-19 SpringValidation用注解代替代码参数校验解析
- 2024-10-19 使用正则表达式验证身份证号-C#学习进阶
- 2024-10-19 Python正则校验手机、电话号码有效性
- 2024-10-19 javascript 正则表达式校验密码格式
你 发表评论:
欢迎- 最近发表
- 标签列表
-
- java反编译工具 (77)
- java反射 (57)
- java接口 (61)
- java随机数 (63)
- java7下载 (59)
- java数据结构 (61)
- java 三目运算符 (65)
- java对象转map (63)
- Java继承 (69)
- java字符串替换 (60)
- 快速排序java (59)
- java并发编程 (58)
- java api文档 (60)
- centos安装java (57)
- java调用webservice接口 (61)
- java深拷贝 (61)
- 工厂模式java (59)
- java代理模式 (59)
- java.lang (57)
- java连接mysql数据库 (67)
- java重载 (68)
- java 循环语句 (66)
- java反序列化 (58)
- java时间函数 (60)
- java是值传递还是引用传递 (62)
本文暂时没有评论,来添加一个吧(●'◡'●)