/
/
替换文本:
替换

常用正则表达式

一、校验数字的表达式

用途 正则表达式 示例 说明
数字 ^\d+$ 12345 只允许非负整数(0或正整数)
n位数字 ^\d{n}$ 1234 (n=4) 恰好 n 位数字
至少n位数字 ^\d{n,}$ 12345 (n=3) 至少 n 位数字
m-n位数字 ^\d{m,n}$ 1234 (m=2,n=4) m 到 n 位数字
零和非零开头数字 ^(0|[1-9]\d*)$ 0, 123 0 或非零开头的整数
非零开头最多两位小数 ^[1-9]\d*(\.\d{1,2})?$ 12.34 正整数或带1-2位小数
正负数带1-2位小数 ^-?\d+(\.\d{1,2})?$ -12.34, 56.7 正负数,1-2位小数
正数、负数、小数 ^[-+]?\d+(\.\d+)?$ +12.3, -0.5 正负整数或小数
两位小数正实数 ^\d+(\.\d{2})?$ 12, 12.34 正整数或两位小数
1~3位小数正实数 ^\d+(\.\d{1,3})?$ 12.3, 12.345 正整数或1-3位小数
非零正整数 ^[1-9]\d*$ 123 不含0的正整数
非零负整数 ^-[1-9]\d*$ -123 不含0的负整数
非负整数 ^\d+$ 0, 123 0或正整数
非正整数 ^(-\d+|0)$ -123, 0 0或负整数
非负浮点数 ^\d+(\.\d+)?$ 0, 12.3 0或正浮点数
非正浮点数 ^(-\d+(\.\d+)?|0+(\.0+)?)$ -12.3, 0, 0.0 0或负浮点数
正浮点数 ^(([1-9]\d*)|0)\.\d+$ 0.1, 12.3 大于0的浮点数
负浮点数 ^-(([1-9]\d*)|0)\.\d+$ -0.1, -12.3 小于0的浮点数
浮点数 ^-?\d+(\.\d+)?$ -12.3, 0, 45.6 正负浮点数

校验字符的表达式

用途 正则表达式 示例 说明
汉字 ^[\u4e00-\u9fa5]+$ 你好世界 只允许汉字,长度至少1
英文和数字 ^[A-Za-z0-9]+$ abc123 只允许英文和数字
4-40位英文和数字 ^[A-Za-z0-9]{4,40}$ abc12345 4-40位英文和数字
长度为3-20的所有字符 ^.{3,20}$ abc, 12345678901234567890 任意字符,3-20位
26个英文字母 ^[A-Za-z]+$ abcXYZ 只允许大小写英文字母
26个大写英文字母 ^[A-Z]+$ ABCXYZ 只允许大写英文字母
26个小写英文字母 ^[a-z]+$ abcxyz 只允许小写英文字母
数字和26个英文字母 ^[A-Za-z0-9]+$ abc123 只允许数字和英文字母
数字、字母或下划线 ^\w+$ abc_123 数字、字母或下划线
3-20位数字、字母或下划线 ^\w{3,20}$ abc_123 3-20位数字、字母或下划线
中文、英文、数字、下划线 ^[\u4E00-\u9FA5A-Za-z0-9_]+$ 你好abc_123 允许中英文、数字、下划线
中文、英文、数字(不含下划线) ^[\u4E00-\u9FA5A-Za-z0-9]+$ 你好abc123 允许中英文、数字,不含下划线
可输入除%&',;=?$"等字符外的内容 ^[^%&',;=?$\x22]+$ abc123!@# 不含%&',;=?$"等字符
禁止输入含有~的字符 ^[^~]+$ abc123 不含~字符

三、特殊需求表达式

用途 正则表达式 示例 说明
Email地址^\w+([-+.']\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*$test@mail.com常用邮箱格式
域名[a-zA-Z0-9][-a-zA-Z0-9]{0,62}(\.[a-zA-Z0-9][-a-zA-Z0-9]{0,62})+\.?www.example.com支持多级域名
Internet URL^[a-zA-Z]+://[^\s]+$https://abc.com常用URL格式
手机号码^(13[0-9]|14[01456879]|15[0-35-9]|16[2567]|17[0-8]|18[0-9]|19[0-35-9])\d{8}$13812345678中国大陆手机号
电话号码(区号-号码)^(\d{3,4}-)?\d{7,8}$010-12345678区号可选
国内电话号码\d{3}-\d{8}|\d{4}-\d{7}021-12345678常见座机格式
支持分机号的电话((\d{11})|((\d{7,8})|(\d{3,4}-\d{7,8})|(\d{3,4}-\d{7,8}-\d{1,4})|(\d{7,8}-\d{1,4})))$010-12345678-123支持分机号
身份证号(^\d{15}$)|(^\d{18}$)|(^\d{17}[\dXx]$)11010119900307123415/18位,末位可为X
合法账号^[a-zA-Z][a-zA-Z0-9_]{4,15}$abc_123字母开头,5-16位
密码(字母开头,6-18位)^[a-zA-Z]\w{5,17}$a12345_字母开头,6-18位
强密码(无特殊字符)^(?=.*\d)(?=.*[a-z])(?=.*[A-Z])[a-zA-Z0-9]{8,10}$Abc123458-10位,含大小写字母和数字
强密码(可含特殊字符)^(?=.*\d)(?=.*[a-z])(?=.*[A-Z]).{8,10}$Abc12345!8-10位,含大小写字母、数字、特殊字符
日期格式^\d{4}-\d{1,2}-\d{1,2}$2023-01-01yyyy-mm-dd
一年12个月^(0?[1-9]|1[0-2])$01, 1201-12或1-12
一个月31天^((0?[1-9])|((1|2)[0-9])|30|31)$01, 3101-31或1-31
钱的输入(整数)^(0|[1-9][0-9]*)$10000非负整数
钱的输入(可负数)^(0|-?[1-9][0-9]*)$-10000允许负数
钱的输入(小数)^[0-9]+(\.[0-9]{1,2})?$10000.00最多两位小数
钱的输入(带千分位)^([0-9]+|[0-9]{1,3}(,[0-9]{3})*)(\.[0-9]{1,2})?$10,000.00千分位支持
xml文件^([a-zA-Z]+-?)+[a-zA-Z0-9]+\.[xX][mM][lL]$test-1.xmlxml文件名
中文字符[\u4e00-\u9fa5]单个中文字符
双字节字符[^\x00-\xff]汉字,日文非ASCII字符
空白行^\s*$(空行)匹配空白行
HTML标记<[^>]+><div>简单HTML标签
首尾空白字符^\s*|\s*$ abc 去除首尾空白
腾讯QQ号[1-9][0-9]{4,}100005位及以上数字
中国邮政编码[1-9]\d{5}(?!\d)1000006位数字
IPv4地址((2(5[0-5]|[0-4]\d))|[0-1]?\d{1,2})(\.((2(5[0-5]|[0-4]\d))|[0-1]?\d{1,2})){3}192.168.1.1IPv4格式