平时不常写正则表达式,记录一些常用的,不用再花时间写或是到处找
数字
整数
浮点数
- 正浮点数
1
| ^[1-9]\d*\.\d*|0\.\d*[1-9]\d*$
|
- 负浮点数
1
| ^-[1-9]\d*\.\d*|-0\.\d*[1-9]\d*$
|
字符
中文字符
英文字符
英文和数字
空白行
特殊格式
Email
- 1
1
| [\w!#$%&'*+/=?^_`{|}~-]+(?:\.[\w!#$%&'*+/=?^_`{|}~-]+)*@(?:[\w](?:[\w-]*[\w])?\.)+[\w](?:[\w-]*[\w])?
|
- 2
1
| w+([-+.]w+)*@w+([-.]w+)*.w+([-.]w+)*
|
URL
手机号
- 固定
1
| ^(13[0-9]|14[0-9]|15[0-9]|16[0-9]|17[0-9]|18[0-9]|19[0-9])\d{8}$
|
- 泛解析
1
| ^([1][3,4,5,6,7,8,9])\d{9}$)
|
身份证号
- 18 位
1
| ^(\d{6})(\d{4})(\d{2})(\d{2})(\d{3})([0-9]|X)$
|
账号
- 字母开头,允许 5-16 字节,允许字母数字下划线
1
| ^[a-zA-Z][a-zA-Z0-9_]{4,15}$
|
密码
- 以字母开头,长度在 6~18 之间,只能包含字母、数字和下划线
- 必须包含大小写字母和数字的组合,不能使用特殊字符,长度在 8-10 之间
1
| ^(?=.*\d)(?=.*[a-z])(?=.*[A-Z])[\da-zA-Z]{8,10}$
|
日期
- 年 - 月 - 日
1
| ([0-9]{3}[1-9]|[0-9]{2}[1-9][0-9]{1}|[0-9]{1}[1-9][0-9]{2}|[1-9][0-9]{3})-(((0[13578]|1[02])-(0[1-9]|[12][0-9]|3[01]))|((0[469]|11)-(0[1-9]|[12][0-9]|30))|(02-(0[1-9]|[1][0-9]|2[0-8])))
|
金额
- 0.01, 10000.00
1
| (^[1-9]([0-9]+)?(\.[0-9]{1,2})?$)|(^(0){1}$)|(^[0-9]\.[0-9]([0-9])?$)
|
IP 地址
- 1
- 2
1
| ((?:(?:25[0-5]|2[0-4]\\d|[01]?\\d?\\d)\\.){3}(?:25[0-5]|2[0-4]\\d|[01]?\\d?\\d))
|
参考文献