JavaScript 常用正则表达式验证规则汇总

作者:闭包旅人

时间:2026-10-21

浏览:254

本文整理了一系列 JavaScript 中常用的正则表达式,涵盖数字、邮箱、URL、电话、身份证及特殊字符等常见场景的验证规则。通过具体的代码示例,帮助开发者快速实现前端表单数据的格式校验与合法性检查,提升代码复用率。

文章目录

JavaScript 常用正则表达式验证规则


<script type="text/javascript"> 
 function validate(){ 
 var reg = new RegExp("^[0-9]*$"); 
 var obj = document.getElementById("name"); 
 if(!reg.test(obj.value)){ 
 alert("请输入数字!"); 
 } 
 if(!/^[0-9]*$/.test(obj.value)){ 
 alert("请输入数字!"); 
 } 
 } 

以下集合整理了一系列用于验证各类数据格式的正则表达式。

匹配纯数字:^[0-9]*$

匹配恰好 n 位的数字:^\d{n}$

匹配至少 n 位的数字:^\d{n,}$

匹配 m 到 n 位之间的数字:^\d{m,n}$

匹配以零或非零数字开头的数值:^(0|[1-9][0-9]*)$

匹配保留两位小数的正实数:^[0-9]+(.[0-9]{2})?$

匹配保留 1 至 3 位小数的正实数:^[0-9]+(.[0-9]{1,3})?$

匹配非零的正整数:^\+?[1-9][0-9]*$

匹配非零的负整数:^\-[1-9][0-9]*$

匹配非负整数(包含正整数和 0):^\d+$

匹配非正整数(包含负整数和 0):^((-\d+)|(0+))$

匹配长度恰好为 3 的字符串:^.{3}$

匹配仅由 26 个英文字母组成的字符串:^[A-Za-z]+$

匹配仅由 26 个大写英文字母组成的字符串:^[A-Z]+$

匹配仅由 26 个小写英文字母组成的字符串:^[a-z]+$

匹配由数字和 26 个英文字母混合组成的字符串:^[A-Za-z0-9]+$

匹配由数字、26 个英文字母或下划线组成的字符串:^\w+$

匹配用户密码:^[a-zA-Z]\w{5,17}$。正确格式要求以字母开头,长度在 6 到 18 之间,且只能包含字符、数字和下划线。

检测是否包含 ^%&',;=?$\" 等特殊字符:[^%&',;=?$\x22]+

匹配汉字:^[\u4e00-\u9fa5],{0,}$

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

匹配 Internet URL:^http://([\w-]+\.)+[\w-]+(/[\w-./?%&=]*)?$ ;^[a-zA-z]+://(w+(-w+)*)(.(w+(-w+)*))*(?S*)?$

匹配电话号码:^(\d3,4|\d{3,4}-)?\d{7,8}$。正确格式示例包括:XXXX-XXXXXXX,XXXX-XXXXXXXX,XXX-XXXXXXX,XXX-

XXXXXXXX,XXXXXXX,XXXXXXXX。

匹配身份证号(15 位或 18 位数字):^\d{15}|\d{}18$

匹配一年中的 12 个月:^(0?[1-9]|1[0-2])$。正确格式为“01”至“09”以及“1”和“12”。

匹配一个月中的 31 天:^((0?[1-9])|((1|2)[0-9])|30|31)$。正确格式为 01、09 和 1、31。

匹配整数:^-?\d+$

匹配非负浮点数(正浮点数加 0):^\d+(\.\d+)?$

匹配正浮点数:^(([0-9]+\.[0-9]*[1-9][0-9]*)|([0-9]*[1-9][0-9]*\.[0-9]+)|([0-9]*[1-9][0-9]*))$

匹配非正浮点数(负浮点数加 0):^((-\d+(\.\d+)?)|(0+(\.0+)?))$

匹配负浮点数:^(-(([0-9]+\.[0-9]*[1-9][0-9]*)|([0-9]*[1-9][0-9]*\.[0-9]+)|([0-9]*[1-9][0-9]*)))$

匹配浮点数:^(-?\d+)(\.\d+)?$

补充说明:最新手机号码与固话号码的正则表达式。

1、手机号码,支持 17 开头。

/^0?(13[0-9]|15[012356789]|17[013678]|18[0-9]|14[57])[0-9]{8}$/

2、固话号码,支持 400 或 800 开头。

/^0?(13[0-9]|15[012356789]|17[013678]|18[0-9]|14[57])[0-9]{8}$/

3、手机号码与固话号码的综合匹配。

/^(0?(13[0-9]|15[012356789]|17[013678]|18[0-9]|14[57])[0-9]{8})|(400|800)([0-9\\-]{7,10})|(([0-9]{4}|[0-9]{3})(-| )?)?([0-9]{7,8})((-| |转)*([0-9]{1,4}))?$/

以上介绍的是 JavaScript 正则表达式判断有效数的实例代码,希望能对读者有所帮助。如有任何疑问,欢迎留言交流,小编会及时回复。同时感谢大家对本站网站的支持!

实用工具推荐

电子包浆

绿化、压缩、噪点和虚拟水印,自由调节做旧程度。

使用 ›
图片压缩

选择画质和输出格式,预览压缩前后的大小。

使用 ›
相关文章