常用正则表达式汇总整理

简介: 常用正则表达式汇总整理

一、校验数字的表达式

1、数字:^[0-9]*$

2、n位的数字:^\d{n}$

3、至少n位的数字:^\d{n,}$

4、m-n位的数字:^\d{m,n}$

5、零和非零开头的数字:^(0|[1-9][0-9]*)$

7、非零开头的最多带两位小数的数字:^([1-9][0-9]*)+(\.[0-9]{1,2})?$

8、带1-2位小数的正数或负数:^(\-)?\d+(\.\d{1,2})$

9、正数、负数、和小数:^(\-|\+)?\d+(\.\d+)?$

10、非零的正整数:^[1-9]\d*$ 或 ^([1-9][0-9]*){1,3}$ 或 ^\+?[1-9][0-9]*$

11、非负浮点数:^\d+(\.\d+)?$ 或 ^[1-9]\d*\.\d*|0\.\d*[1-9]\d*|0?\.0+|0$

12、非正浮点数:^((-\d+(\.\d+)?)|(0+(\.0+)?))$ 或 ^(-([1-9]\d*\.\d*|0\.\d*[1-9]\d*))|0?\.0+|0$

13、正浮点数:^[1-9]\d*\.\d*|0\.\d*[1-9]\d*$ 或 ^(([0-9]+\.[0-9]*[1-9][0-9]*)|([0-9]*[1-9][0-9]*\.[0-9]+)|([0-9]*[1-9][0-9]*))$

14、负浮点数:^-([1-9]\d*\.\d*|0\.\d*[1-9]\d*)$ 或 ^(-(([0-9]+\.[0-9]*[1-9][0-9]*)|([0-9]*[1-9][0-9]*\.[0-9]+)|([0-9]*[1-9][0-9]*)))$

15、浮点数:^(-?\d+)(\.\d+)?$ 或 ^-?([1-9]\d*\.\d*|0\.\d*[1-9]\d*|0?\.0+|0)$

二、校验字符的表达式

1、汉字:^[\u4e00-\u9fa5]{0

2、由数字、26个英文字母或者下划线组成的字符串:^\w+$ 或 ^\w{3,20}$

3、中文、英文、数字包括下划线:^[\u4E00-\u9FA5A-Za-z0-9_]+$

4、中文、英文、数字但不包括下划线等符号:^[\u4E00-\u9FA5A-Za-z0-9]+$ 或 ^[\u4E00-\u9FA5A-Za-z0-9]{2,20}$

5、可以输入含有^%&',;=?$\"等字符:[^%&',;=?$\x22]+

6、禁止输入含有~的字符:[^~]+

三、特殊需求表达式

1、Email地址:^\w+([-+.]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*$

2、手机号码:^(13[0-9]|14[01456879]|15[0-35-9]|16[2567]|17[0-8]|18[0-9]|19[0-35-9])\d{8}$

3、身份证号(15位、18位数字),最后一位是校验位,可能为数字或字符X:(^\d{15}$)|(^\d{18}$)|(^\d{17}(\d|X|x)$)

4、密码(以字母开头,长度在6~18之间,只能包含字母、数字和下划线):^[a-zA-Z]\w{5,17}$

5、强密码(必须包含大小写字母和数字的组合,不能使用特殊字符,长度在 8-10 之间):^(?=.*\d)(?=.*[a-z])(?=.*[A-Z])[a-zA-Z0-9]{8,10}$

6、强密码(必须包含大小写字母和数字的组合,可以使用特殊字符,长度在8-10之间):^(?=.*\d)(?=.*[a-z])(?=.*[A-Z]).{8,10}$

7、日期格式:^\d{4}-\d{1,2}-\d{1,2}

8、一年的12个月(01~09和1~12):^(0?[1-9]|1[0-2])$

9、一个月的31天(01~09和1~31):^((0?[1-9])|((1|2)[0-9])|30|31)$

目录
相关文章
|
5月前
|
机器学习/深度学习 PHP
最全的正则表达式整理
最全的正则表达式整理
51 6
|
6月前
|
数据采集 自然语言处理 监控
正则表达式相关知识点
正则表达式相关知识点
62 0
|
6月前
|
JavaScript 前端开发 数据库
正则表达式[进阶]
正则表达式[进阶]
60 0
|
程序员
常用正则表达式整理【总结】
平时不太喜欢记忆这些东西,开发的时候需要拿过来直接用就好
119 0
|
XML 前端开发 Java
常用正则表达式整理
常用正则表达式整理
279 0
|
机器学习/深度学习 自然语言处理 PHP
正则表达式知识点整理
正则表达式(Regular Expression)就是用某种模式去匹配一类字符串的一种公式。 正则表达式使用单个字符串来描述、匹配一系列匹配某个句法规则的字符串。 正则表达式是繁琐的,但它是强大的,学会之后的应用会让你除了提高效率外,会给你带来绝对的成就感。只要认真阅读本教程,加上应用的时候进行一定的参考,掌握正则表达式不是问题。
帮你读懂正则表达式
什么是正则表达式?通过正则表达式创建2种方式、正则表达式的组成剖析、几个例子分析来帮你读懂常见正则表达式。
|
机器学习/深度学习 移动开发 JavaScript
正则表达式学习记录
正则表达式学习记录
213 0
基本正则笔记
1.   ^   字符串的开始; $ 字符串的结束  example: "^abc" 以abc 开头   "def$"  以def结尾 2.  *   没有或者更多; + 一次或者更多  ; ? 没有或者一个  example:  "ab*" a 后面跟着零个或者若干个b;       "ab+" ...
1081 0