要求: 密码中允许出现数字、大写字母、小写字母、特殊字符(.@$!%*#_~?&^),但至少包含其中2种且长度在8-16之间(四种符号任意满足三种即可)

package mainimport ("fmt""regexp"
)// 密码校验规则: 必须包含数字、大写字母、小写字母、特殊字符(如.@$!%*#_~?&^)至少3种的组合且长度在8-16之间
func VerifyPassword(minLength, maxLength int, pwd string) bool {if len(pwd) < minLength || len(pwd) > maxLength {return false}// 过滤掉这四类字符以外的密码串,直接判断不合法re, err := regexp.Compile(`^[a-zA-Z0-9.@$!%*#_~?&^]{8,16}$`)if err != nil {return false}match := re.MatchString(pwd)if !match {return false}var level = 0patternList := []string{`[0-9]+`, `[a-z]+`, `[A-Z]+`, `[.@$!%*#_~?&^]+`}for _, pattern := range patternList {match, _ := regexp.MatchString(pattern, pwd)if match {level++}}if level < 3 {return false}return true
}

golang: 密码中允许出现数字、大写字母、小写字母、特殊字符,但至少包含其中2种且长度在8-16之间(四种符号任意满足三种即可)相关推荐

  1. 密码的自动生成器:密码由大写字母/小写字母/数字组成,生成12位随机密码

    package arithmetic;import java.util.Random;public class Test04 {/*** 密码的自动生成器:密码由大写字母/小写字母/数字组成,生成12 ...

  2. JS实现数字字母混合验证码(数字+大写字母+小写字母)

    我之前写了一篇<JS实现随机验证码>,可以产生随机数字.随机颜色.随机位置,但只能产生数字验证码,今天在此基础上进行改进,使之可以随机大写字母.小写字母.数字三种类型. 思路 我们使用Ma ...

  3. (汇编)输出数字、大写、小写字母

    问题:内存自source开始有20个数字.大写字母.小写字母的混合串(比如:1234567890abceFGHIJ)编程将其中的数字符号挑选出来存储到dst开始的内存中,做一个菜单,选1,2,3分别输 ...

  4. //随机生成1位大写字母\小写字母\数字

    package HomeWork; //随机生成1位大写字母\小写字母\数字 public class Test_2 {public static void main(String[] args) { ...

  5. C语言编程>第二十二周 ④ 从键盘输入一组小写字母,保存在字符数组str中,请补充fun函数,该函数的功能是:把字符数组str中字符下标为偶数的小写字母转换成对应的大写字母,结果仍保存在原数组

    例题:从键盘输入一组小写字母,保存在字符数组str中,请补充fun函数,该函数的功能是:把字符数组str中字符下标为偶数的小写字母转换成对应的大写字母,结果仍保存在原数组中. 例如,输入 " ...

  6. (C语言)(用指针方法处理)输入一行文字,找出其中大写字母,小写字母,空格,数字以及其他字符各有多少

    (用指针方法处理)输入一行文字,找出其中大写字母,小写字母,空格,数字以及其他字符各有多少 #include<stdio.h> #include<stdlib.h> #incl ...

  7. 设置密码8-16位大写字母+小写字母+数字+特殊字符

    我的这个效果是结合element UI的样式显示的,大家主要看函数里边对应的实现方法 主要的js代码: var validatePass = (rule, value, callback) => ...

  8. Python程序输入一个字符串并查找总数的大写和小写字母

    Given a string str1 and we have to count the total numbers of uppercase and lowercase letters. 给定字符串 ...

  9. [转载] Python程序输入一个字符串并查找总数的大写和小写字母

    参考链接: Python程序可大写字符串中每个单词的第一个和最后一个字符 Given a string str1 and we have to count the total numbers of u ...

最新文章

  1. 网站速度优化-前端篇
  2. 176页报告辟谣自动化时代的就业危机(附下载)
  3. 【PAT (Advanced Level) Practice】1113 Integer Set Partition (25 分)
  4. python爬虫案例-python爬虫案例
  5. Jupyter Notebook修改默认工作路径
  6. 巧妙解决:access denied (javax.management.MBeanTrust...
  7. java中常用的定位方式有哪些_java-selenium八种元素定位方式
  8. KMyMoney:全体理财好管家
  9. HihoCoder - 1441 后缀自动机一·基本概念(模拟,后缀自动机入门好题)
  10. spearman相关性_Spearman的相关性及其在机器学习中的意义
  11. 点石成金-3-超市大亨
  12. Linux Bash Shell中的特殊参数含义
  13. Vue 页面权限控制(一)
  14. 2014届去哪儿校园招聘笔试题
  15. android通过代码设置铃声_iOS、Android数据传输管理工具
  16. ubuntu22.04在虚拟机中的安装过程以及搜狗输入法的安装
  17. mysql给数据库表批量加表前缀_批量修改mysql数据库表前缀。
  18. 人脸面部情绪识别(一)
  19. 微信小程序显示空格符
  20. Java对接云mas发送短信(https方式)

热门文章

  1. js判断身份证是否合法
  2. ida 动态调试so库 (连接夜神模拟器)
  3. 2021-3-21-第三周
  4. 乐高大颗粒作品19:端午节做一个粽子
  5. NLP模型笔记2022-03:简单理解nlp句法分析
  6. JAVA编写QQ登录界面
  7. 用泰勒公式编写一个sin函数--C语言
  8. “0基础考生考前三小时突破《申论》80分气哭学霸”——公文题(公文基础理论+方案类+总结类)
  9. 源码分析Dubbo监控中心实现原理
  10. 满口春日清爽 书亦烧仙草刺梨新品上市