
史上最全常用正则表
发布日期:2021-05-18 07:03:41
浏览次数:23
分类:精选文章
本文共 1970 字,大约阅读时间需要 6 分钟。
常用正则表达式参考手册
一、数字相关表达式
- 任意数字字符串:
^\d*$
- n位等长的数字串:
^\d{n}$
- 至少n位数字:
^\d{n,}$
- m到n位的数字:
^\d{m,n}$
- 零或非零开头的数字:
^(0|[1-9]\d*)$
- 带最多两位小数的非零开头数字:
^([1-9]\d*+)(\.[0-9]{1,2})?$
- 正或负号后跟至少一位数字,小数点后一到两位:
^(-?\d+)(\.\d{1,2})?$
- 正或负号后跟至少一位数字,小数点后可有或无数字(至少一位整数部分):
^(-|\+)?\d+(\.\d+)?$
- 有两位小数的正实数:
^[0-9]+(\.[0-9]{2})?$
- 1到3位小数的正实数:
^[0-9]+(\.[0-9]{1,3})?$
- 非零的正整数:
^[1-9]\d*$
- 负整数:
^-[1-9]\d*$
- 非负整数:
^\d+$
或^[1-9]\d*|0$
- 非正整数:
^-?[1-9]\d*|0$
- 非负浮点数:
^\d+(\.\d+)?$
- 负浮点数:
^(-[1-9]\d*+)(\.\d+)?$
- 浮点数(支持小数点前后数字):
^(-?\d+)(\.\d*)?$
- 正浮点数:
^([1-9]\d*+)(\.\d*)?$
- 负浮点数:
^(-[1-9]\d*+)(\.\d*)?$
二、字符验证表达式
- 汉字字符:
[\u4e00-\u9fa5]{0,}
- 英文字母和数字:
^[A-Za-z0-9]+$
或^[A-Za-z0-9]{4,40}$
- 长度为3-20的任意字符:
^.{3,20}$
- 26个英文字母组成的字符串:
^[A-Za-z]+$
- 大写英文字母字符串:
^[A-Z]+$
- 小写英文字母字符串:
^[a-z]+$
- 数字和英文字母组合的字符串:
^[A-Za-z0-9]+$
- 包含数字、字母和下划线的字符串:
^\w+$
或^\w{3,20}$
- 支持中英文、数字和下划线的字符串:
[\u4e00-\u9fa5A-Za-z0-9_]+$
- 不支持下划线的中文、英文字母和数字字符串:
[\u4e00-\u9fa5A-Za-z0-9]+$
- 包含特殊字符字符:
[^%&',;=?$\x22]+$
- 禁止包含~字符的字符串:
[^~\x22]+$
三、特殊需求表达式
- 电子邮箱地址:
^\w+([-+.]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*$
- 域名格式:
[a-zA-Z0-9][-a-zA-Z0-9]{0,62}(/[a-zA-Z0-9][-a-zA-Z0-9]{0,62})+/.?$
- 互联网URL地址:
[a-zA-z]+://[^\s]*
或^http://([\w-]+\.)+[\w-]+(/[\w-./?%&=]*)?$
- 手机号码:
^(13[0-9]|14[5|7]|15[0|1|2|3|5|6|7|8|9]|18[0|1|2|3|5|6|7|8|9])\d{8}$
- 电话号码(含多种格式):
^(\(\d{3,4}-)|\d{3.4}-)?\d{7,8}$
- 国内电话号码:
\d{3}-\d{8}|\d{4}-\d{7}
- 身份证号码(15或18位):
\d{15}|\d{18}$
- 短身份证号码(允许x结尾):
^([0-9]){7,18}(x|X)?$
或^\d{8,18}|[0-9x]{8,18}|[0-9X]{8,18}?$
- 账号格式(字母开头,允许5-16位,支持字母、数字和下划线):
^[a-zA-Z][a-zA-Z0-9_]{4,15}$
- 密码格式(字母开头,6-18位,支持字母、数字和下划线):
^[a-zA-Z]\w{5,17}$
- 强密码格式(必须包含字母和数字,8-10位,禁止特殊字符):
^(?=.*\d)(?=.*[a-z])(?=.*[A-Z]).{8,10}$
- 日期格式:
\d{4}-\d{1,2}-\d{1,2}
- 月份格式(01~12):
^(0?[1-9]|1[0-2])$
- 月份天数(1-31天):
^((0?[1-9])|((1|2)[0-9])|30|31)$
- 金额格式(支持小数点和逗号):
[0-9]{1,3}(,[0-9]{3})*(\.[0-9]{1,2})?$
- XML文件名格式:
^([a-zA-Z]+-?)+[a-zA-Z0-9]+\\.[x|X][m|M][l|L]$
- 中文字符正则表达式:
[\u4e00-\u9fa5]
- 双字节字符正则表达式(包括汉字):
[^\x00-\xff]
- 空白行正则表达式:
\s*\r
- HTML标记正则表达式:
<(\S*?)[^>]*>
- 首尾空白字符正则表达式:
^\s*|\s*$
- 腾讯QQ号:
[1-9][0-9]{4,}
- 中国邮政编码:
[1-9]\d{5}(?!\d)
- IP地址:
\d+\.\d+\.\d+\.\d+