背景 以前我们的密码规则比较简单,就是简单的字母+数字即可。现在要部署到某个安全性要求较高的环境下,就要求我们提升密码强度,新的规则要求: 设置密码长度为6至20位,包含大、小写字母、数字、特殊字符_!@#$%^&组合 显然,字符串处理利器:正则表达式是我们的答案。 正则表达式可视化 直接上结果。 ^(?=.*[a-z])(?=.*[A-Z])(?=.*\d)(?=.*[_!@#$%^&])[^ ]{6,20}$ 在可视化工具里看下这个正则表达式的效果。 https://jex.im/regulex/#!flags=&re=%5E(a%7Cb)*%3F%24 Note: 注意数字那里的转义