开发者社区 问答 正文

不才,求一个正则表达式

要求:必须同时包含
大写字母,小写字母,数字,特殊符号
四个条件中的3个而且长度至少8位即可通过;

展开
收起
爵霸 2016-06-17 11:43:55 1767 分享 版权
1 条回答
写回答
取消 提交回答
  • 我觉得这种需求更直观的应该用js来做,我写了一个简单的示例你可以参考一下。

    function check(str){
      var n = 0;
      // 首先从长度判断
      if(str.length < 8)      return false;
      // 依次判断是否包含小写字母,大写字母,数字,特殊字符,并记下满足条件的次数。
      n += +/[a-z]/.test(str);
      n += +/[A-Z]/.test(str);
      n += +/[0-9]/.test(str);
      n += +/[~!@#$%^&*]/.test(str);
      return n >= 3;
    }
    2019-07-17 19:42:23
    赞同 展开评论
问答地址: