一些常用的正则表达式

简介: 今天在写一些输入验证的时候用到了正则表达式,现在就回顾一下我们常用的正则表达式,对于正则表达式的写法很多种,看个人的习惯了,我的写法也许不是很好,但可以满足基本需求。

今天在写一些输入验证的时候用到了正则表达式,现在就回顾一下我们常用的正则表达式,对于正则表达式的写法很多种,看个人的习惯了,我的写法也许不是很好,但可以满足基本需求。




1、验证用户名和密码:^[A-Za-z0-9]\w{5,15}$


2、座机电话号码:^[A-Za-z0-9]\w{5,15}$


3、验证手机号码:^[1][3456879]\d{9}$


4、验证身份证号(15位或18位数字):^(^[1-9]\d{7}((0\d)|(1[0-2]))(([0|1|2]\d)|3[0-1])\d{3}$)|(^[1-9]\d{5}[1-9]\d{3}((0\d)|(1[0-2]))(([0|1|2]\d)|3[0-1])((\d{4})|\d{3}[Xx])$)$


对于身份证


身份证15位编码规则:dddddd yymmdd xx p


* dddddd:6位地区编码


* yymmdd: 出生年(两位年)月日,如:910215

* xx: 顺序编码,系统产生,无法确定

* p: 性别,奇数为男,偶数为女

*

* 身份证18位编码规则:dddddd yyyymmdd xxx y

* dddddd:6位地区编码

* yyyymmdd: 出生年(四位年)月日,如:19910215

* xxx:顺序编码,系统产生,无法确定,奇数为男,偶数为女

* y: 校验码,该位数值可通过前17位计算获得

*

* 前17位号码加权因子为 Wi = [ 7, 9, 10, 5, 8, 4, 2, 1, 6, 3, 7, 9, 10, 5, 8, 4, 2 ]

* 验证位 Y = [ 1, 0, 10, 9, 8, 7, 6, 5, 4, 3, 2 ]

* 如果验证码恰好是10,为了保证身份证是十八位,那么第十八位将用X来代替

* 校验位计算公式:Y_P = mod( ∑(Ai×Wi),11 )

* i为身份证号码1...17 位; Y_P为校验码Y所在校验码数组位置

*/


5、验证Email地址:^([a-zA-Z0-9]+[_|\-|\.]?)*[a-zA-Z0-9]+@([a-zA-Z0-9]+[_|\-|\.]?)*[a-zA-Z0-9]+(\.[a-zA-Z]{2,3})+$;


6、只能输入由数字和26个英文字母组成的字符串:("^[A-Za-z0-9]+$") ;


7、整数或者小数:^[0-9][0-9.]+[0-9]+$


8、只能输入数字^\d+$


9、只能输入n位的数字:^\d{n}$


10、只能输入至少n位的数字:"^\\d{n,}$"。


11、只能输入m~n位的数字:"^\\d{m,n}$"。


12、只能输入零和非零开头的数字:"^(0|[1-9][0-9]*)$"。


13、只能输入有两位小数的正实数:"^[0-9]+(.[0-9]{2})?$"。


14、只能输入有1~3位小数的正实数:"^[0-9]+(\.[0-9]{1,3})?$"。


15、只能输入汉字:"^[\u4e00-\u9fa5]{0,}$"。

目录
相关文章
|
7月前
常用正则表达式 (必备)
常用正则表达式 (必备)
172 0
|
1月前
正则表达式
正则表达式
66 36
|
数据安全/隐私保护
正则表达式之最常用的
正则表达式之最常用的
90 0
|
编译器 测试技术 C++
正则表达式_1
b站:奇乐编程 10分钟快速掌握正则表达式
131 1
正则表达式_1
什么是正则表达式?
什么是正则表达式?
100 0
|
机器学习/深度学习 JavaScript
详解 正则表达式
详解 正则表达式
详解 正则表达式
|
Shell Linux Python
正则表达式与运用
正则表达式用的地方是很多的。比如字符串处理过程中。最近遇到记录一下。 1. 比如在shell中 1 #!/bin/bash 2 3 str="date:2017-11-28 os:centos blackbord:blog" 4 5 echo $str | grep centos --colo...
1293 0
|
机器学习/深度学习 Windows JavaScript