一些常用的正则表达式

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

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




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,}$"。

目录
相关文章
正则表达式:理解与运用
正则表达式:理解与运用
79 0
|
5月前
|
C++
正则表达式
正则表达式
|
5月前
|
自然语言处理
正则表达式1
正则表达式
|
6月前
最全面的常用正则表达式大全
最全面的常用正则表达式大全
|
JavaScript 数据安全/隐私保护
正则表达式(全)
正则表达式是由一些具有特殊含义的字符组成的字符串,多用于查找、替换符合规则的字符串。在表单验证、Url映射等处都会经常用到。
227 0
|
Java 数据安全/隐私保护
浅谈正则表达式的使用
在开发中,正则表达式的使用场景是多种多样的,同时也能够支持各种复杂场景,同时,正则表达式也是支持许多种语言,对于字符串的截取,匹配,替换 有着巨大的作用。
248 0
|
机器学习/深度学习 Windows JavaScript
|
索引 Python