当前位置:   article > 正文

js正则匹配密码:必须包含大写字母、小写字母、数字以及特殊字符_必须包含数字、大小写字母和特殊字符

必须包含数字、大小写字母和特殊字符

说明:

本文列出的特殊字符全部是英文字符(中文字符没有进行验证),有:

~ ! @ # $ % ^ & * ( ) _ + [ ] { } | \ ; : ' " , . / < > ? 

正则匹配代码:

注意:英文状态下的方括号 [ ] 是需要转义的,即

;还有反斜杠 \ ,也是需要转义即: \\;还有正斜杠 / ,也是需要转义的即 :\/

  1. const reg2 =
  2. /^(?=.*?[a-z])(?=.*?[A-Z])(?=.*?\d)(?=.*?[~!#@$%^*&()_+{}\[\]|\\;:'",<.>\/?])[a-zA-Z\d~!#@$%^*&()_+{}\[\]|\\;:'",<.>\/?]*$/;

下面是完整代码,以及示意图:

  1. <template>
  2. <el-form
  3. ref="form"
  4. :model="user"
  5. status-icon
  6. :rules="rules"
  7. label-width="120px"
  8. >
  9. <el-form-item label="密  码:" prop="userPass">
  10. <el-input
  11. v-model.lazy="user.userPass"
  12. placeholder="请输入密码"
  13. ></el-input>
  14. </el-form-item>
  15. </el-form>
  16. </template>

 

  1. <script>
  2. data(){
  3. const reg2 =
  4. /^(?=.*?[a-z])(?=.*?[A-Z])(?=.*?\d)(?=.*?[~!#@$%^*&()_+{}\[\]|\\;:'",<.>\/?])[a-zA-Z\d~!#@$%^*&()_+{}\[\]|\\;:'",<.>\/?]*$/;
  5. const userPassValidate = (rule, value, callback) => {
  6. if (!value) {
  7. return callback(new Error("密码不能为空"));
  8. }
  9. setTimeout(() => {
  10. if (value.toString().length < 8 || value.toString().length > 32) {
  11. callback(new Error("密码长度要在8到32位之间"));
  12. } else if (!reg2.test(value)) {
  13. callback(new Error("必须包括数字、大小写字母以及特殊字符"));
  14. } else {
  15. console.log("rule---", rule);
  16. console.log("value+++", value);
  17. callback();
  18. }
  19. }, 0);
  20. };
  21. return {
  22. rules: {
  23. userPass: [
  24. { required: true, validator: userPassValidate, trigger: "change" },
  25. ],
  26. },
  27. };
  28. }
  29. </script>

1、没有大写字母: 

 正常:

2、没有小写:

 

正常:

  3、没有特殊符号

正常:

 4、没有数字:

 

正常:

 

 

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/article/detail/56848
推荐阅读
相关标签
  

闽ICP备14008679号