正则匹配密码只能是数字和字母组合字符串功能【php与js实现】

(编辑:jimmy 日期: 2024/9/24 浏览:2)

本文实例讲述了正则匹配密码只能是数字和字母组合字符串功能。分享给大家供大家参考,具体如下:

密码要求:

1. 不能全部是数字
2. 不能全部是字母
3. 必须是数字和字母组合
4. 不包含特殊字符
5. 密码长度6-30位的字符串

/**
 * @desc get_pwd_strength()im:根据密码字符串判断密码结构
 * @param (string)$mobile
 * return 返回:$msg
 */
function get_pwd_strength($pwd){
  if (strlen($pwd)>30 || strlen($pwd)<6)
  {
    return "密码必须为6-30位的字符串";
  }
  if(preg_match("/^\d*$/",$pwd))
  {
    return "密码必须包含字母,强度:弱";//全数字
  }
  if(preg_match("/^[a-z]*$/i",$pwd))
  {
    return "密码必须包含数字,强度:中";//全字母
  }
  if(!preg_match("/^[a-z\d]*$/i",$pwd))
  {
    return "密码只能包含数字和字母,强度:强";//有数字有字母 ";
  }
}

js 正则匹配

/**
 * 检测密码强度,必须由数字与字母组合,至少6位的字符串。
 */
$.checkPwd = function(v){
 v=$.trim(v);
 if(v.length<6||v.length>30){
    return "密码长度为6-30位";
  }
  if(/^\d+$/.test(v))
  {
    return "全数字";
  }
  if(/^[a-z]+$/i.test(v))
  {
    return "全字母";
  }
  if(!/^[A-Za-z0-9]+$/.test(v))
  {
    return "只能含有数字有字母";
  }
  return "正确";
};

PS:这里再为大家提供2款非常方便的正则表达式工具供大家参考使用:

JavaScript正则表达式在线测试工具:
http://tools.jb51.net/regex/javascript

正则表达式在线生成工具:
http://tools.jb51.net/regex/create_reg

希望本文所述对大家正则表达式学习有所帮助。

一句话新闻
一文看懂荣耀MagicBook Pro 16
荣耀猎人回归!七大亮点看懂不只是轻薄本,更是游戏本的MagicBook Pro 16.
人们对于笔记本电脑有一个固有印象:要么轻薄但性能一般,要么性能强劲但笨重臃肿。然而,今年荣耀新推出的MagicBook Pro 16刷新了人们的认知——发布会上,荣耀宣布猎人游戏本正式回归,称其继承了荣耀 HUNTER 基因,并自信地为其打出“轻薄本,更是游戏本”的口号。
众所周知,寻求轻薄本的用户普遍更看重便携性、外观造型、静谧性和打字办公等用机体验,而寻求游戏本的用户则普遍更看重硬件配置、性能释放等硬核指标。把两个看似难以相干的产品融合到一起,我们不禁对它产生了强烈的好奇:作为代表荣耀猎人游戏本的跨界新物种,它究竟做了哪些平衡以兼顾不同人群的各类需求呢?