正则表达式
一些常用的正则表达式
一、校验数字的表达式
- 数字: ^[0-9]*$
- n 位数字: ^\d{n}$
- 至少 n 位数字: ^\d{n,}$
- m-n 位数字: ^\d{m,n}$
- 零和非零开头的数字: ^(0|[1-9][0-9]*)&
- 非零开头且最多带两位小数数字: ^([1-9][0-9]*)+(.([0-9]{1,2})?$
- 带 1-2 位小数的正数或负数: ^(-)?\d+(.\d{1,2})$
- 正数、负数、和小数: ^(\-|\+)?d+(.d+)?$
- 有两位小数的正实数: ^d+(.[0-9]{2})?$
- 有 1~3 位小数的正实数: ^d+(.[0-9]{1,3})?$
- 非零的正整数: ^[1-9]d*$
- 非负整数: ^d+$
- 非正整数: ^-[1-9]d*$
- 非负浮点数: ^d+(.d+)?$
- 非正浮点数: ^((-d+(.d+)?)|(0+(.0+)?))$
- 正浮点数: ^[1-9]d.d|0.d[1-9]d$
- 负浮点数: ^-([1-9]d.d|0.d[1-9]d)$
- 浮点数: ^(-?d+)(.d+)?$
二、校验字符的表达式
- 汉字: ^[u4e00-u9fa5]+$
- 英文和数字: ^[0-9a-zA-Z]+$
- 长度为 3-20 的所有字符: ^.{3,20}$
- 由 26 个英文字母组成的字符串: ^[a-zA-Z]+$
- 由 26 个大写英文字母组成的字符串: ^[A-Z]+$
- 由 26 个小写英文字母组成的字符串: ^[a-z]+$
- 由数字和 26 个英文字母组成的字符串: ^[a-zA-Z0-9]+$
- 由数字、26 个英文字母或者下划线组成的字符串: ^w+$
- 中文、英文、数字包括下划线: ^[u4E00-u9FA5a-zA-z0-9_]+$
- 中文、英文、数字但不包括下划线等符号: ^[u4E00-u9FA5a-zA-Z0-9]+$
- 可以输入含有 ^%&',;=?$" 等字符: [^%&',;=?$x22]+
- 禁止输入含有 ~ 的字符: [^~x22]+
三、特殊需求表达式
- Email地址: ^w+([-+.]w+)*@w+([-.]w+)*.w+([-.]w+)*$
- 域名: a-zA-Z0-9{0,62}(/.a-zA-Z0-9{0,62})+/.?
- url: [a-zA-z]+://[^s]*
- 手机号码: 1d{10}
- 国内电话号码: d{3}-d{8}|d{4}-d{7}
- 身份证号(15位、18位数字),最后一位是校验位,可能为数字或字符X: (^d{15}$)|(^d{18}$)|(^d{17}(d|X|x)$)
- 帐号是否合法(字母开头,允许5-16字节,允许字母数字下划线): ^a-zA-Z{4,15}$
- 密码(以字母开头,长度在6~18之间,只能包含字母、数字和下划线): ^[a-zA-Z]w{5,17}$
- 强密码(必须都含有数字/大写字母/小写字母/标点符号,8位以上): (?=^.{8,}$)(?=.*d)(?=.*W+)(?=.*[A-Z])(?=.*[a-z])(?!.*n).*$
- QQ号:[1-9]d{4,}
相关推荐
风雨断肠人 2020-10-13
Cwiky 2020-07-18
RuoShangM 2020-06-28
wangzhaotongalex 2020-10-20
wyq 2020-11-11
TLROJE 2020-10-26
duanqingfeng 2020-09-29
rechanel 2020-11-16
cshanzhizi 2020-10-16
luofuIT成长记录 2020-09-22
phphub 2020-09-10
taomengxing 2020-09-07
MaggieRose 2020-08-19
flyingssky 2020-08-18
山水沐光 2020-08-18
jyj00 2020-08-15
AHuqihua 2020-08-09