JavaScript 正则表达式校验实战:密码、中文与常用格式验证

作者:闭包旅人时间:2026-10-24 07:02:15浏览:286

本文详细介绍JavaScript中正则表达式的校验功能,涵盖密码强度(大小写字母数字组合)、纯中文字符及特定字符串组成的验证方法。同时梳理JS正则支持的特性(如量词、环视)与不支持的功能(如逆向环视),并提供完整的代码示例,帮助开发者快速实现字符串类型判断与格式校验。

字符串的各种操作可以通过正则表达式高效实现。除了基础的搜索功能,正则表达式在数据校验方面同样强大,可用于判断字符串类型或组成结构,例如验证密码复杂度、中文字符或特定格式的字符串。下文将分享JavaScript中正则表达式的校验技巧,并结合JS引擎支持的数据类型进行说明。

1.常见js正则校验

(1)校验密码强度

密码强度要求必须包含大写字母、小写字母和数字的组合,禁止使用特殊字符,且长度限制在8到10位之间。


^(?=.*\\d)(?=.*[a-z])(?=.*[A-Z]).{8,10}$

(2)校验中文

字符串内容必须全部为中文字符。


^[\\u4e00-\\u9fa5]{0,}$

(3)由数字、26个英文字母或下划线组成的字符串


^\\w+$

2.js支持与不支持类型

js支持

  • 大多数元字符
  • 字符组
  • 段落起始和终结,以及伪逻辑行
  • 匹配优先量词 .* 和 忽略优先量词 .*?
  • 正向环视 ?=
  • 反向引用 \1 \2
  • 非捕获的分组 ?:
  • 常用修饰符 /igx
  • js 不支持的有
  • 逆向环视(逆向断言)?<=
  • 命名分组 ?=p
  • 分组内部修饰符 (?=i)
  • 固化分组 ?>
  • 占位量词 .*+

js正则表达式校验实例


/*是否带有小数*/
function  isDecimal(strValue ) { 
  var objRegExp= /^\d+\.\d+$/;
  return objRegExp.test(strValue); 
} 

/*校验是否中文名称组成 */
function ischina(str) {
  var reg=/^[\u4E00-\u9FA5]{2,4}$/;  /*定义验证表达式*/
  return reg.test(str);   /*进行验证*/
}

/*校验是否全由8位数字组成 */
function isStudentNo(str) {
  var reg=/^[0-9]{8}$/;  /*定义验证表达式*/
  return reg.test(str);   /*进行验证*/
}

/*校验电话码格式 */
function isTelCode(str) {
  var reg= /^((0\d{2,3}-\d{7,8})|(1[3584]\d{9}))$/;
  return reg.test(str);
}

/*校验邮件地址是否合法 */
function IsEmail(str) {
  var reg=/^\w+@[a-zA-Z0-9]{2,10}(?:\.[a-z]{2,4}){1,3}$/;
  return reg.test(str);
}

到此这篇关于js正则表达式简单校验方法的文章就介绍到这了,更多相关js正则表达式校验内容请搜索本站以前的文章或继续浏览下面的相关文章希望大家以后多多支持本站!

作者最新文章