C#(正则表达式)检查密码复杂度

在用户注册与修改、重置密码时,强制密码达到一定的复杂度,是减少盗号的有效措施之一。

而在代码中检查密码复杂度就需要用到正则表达式,比如要求密码必须包含数字、小写或大写字母、特殊字符、字符数在8-30之间,对应的正则表达式如下:

复制代码
//密码复杂度正则表达式
var regex = new Regex(@"
    (?=.*[0-9])                     #必须包含数字
    (?=.*[a-zA-Z])                  #必须包含小写或大写字母
    (?=([\x21-\x7e]+)[^a-zA-Z0-9])  #必须包含特殊符号
    .{8,30}                         #至少8个字符,最多30个字符
    ", RegexOptions.Multiline | RegexOptions.IgnorePatternWhitespace);
//校验密码是否符合
bool pwdIsMatch = regex.IsMatch(user.USER_PASS);
复制代码

 

原文:https://www.cnblogs.com/dudu/p/regex-password-strength.html

posted @   Jackie Hao  阅读(4084)  评论(0编辑  收藏  举报
编辑推荐:
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
阅读排行:
· 周边上新:园子的第一款马克杯温暖上架
· Open-Sora 2.0 重磅开源!
· 分享 3 个 .NET 开源的文件压缩处理库,助力快速实现文件压缩解压功能!
· Ollama——大语言模型本地部署的极速利器
· DeepSeek如何颠覆传统软件测试?测试工程师会被淘汰吗?
点击右上角即可分享
微信分享提示