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

简介: 原文:检查密码复杂度的C#正则表达式在用户注册与修改、重置密码时,强制密码达到一定的复杂度,是减少盗号的有效措施之一。 而在代码中检查密码复杂度就需要用到正则表达式,比如要求密码必须包含数字、小写或大写字母、特殊字符、字符数在8-30之间,对应的正则表达式如下:  var regex = new Regex(@" (?=.
原文: 检查密码复杂度的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);

如果要求必须包含小写、大写字母,则上面的 (?=.*[a-zA-Z]) 要改为:

(?=.*[a-z])
(?=.*[A-Z])

相关博问:匹配键盘上所有特殊字符的正则表达式如何写

目录
相关文章
|
开发框架 .NET C#
ASP.Net c# 正则表达式 子表达式 group
ASP.Net c# 正则表达式 子表达式 group
64 0
|
3月前
|
安全 C# 数据安全/隐私保护
后端使用C#正则校验密码
这篇文章提供了一个使用C#编写的密码校验示例,通过正则表达式匹配8-16位的密码,确保密码中至少包含一个大写字母、一个小写字母、一个数字以及一个特殊字符。
33 1
后端使用C#正则校验密码
|
2月前
|
前端开发 C#
C# 一分钟浅谈:字符串操作与正则表达式
本文详细介绍C#中的字符串操作与正则表达式应用,涵盖字符串拼接、分割、查找及替换等基础操作,并通过实例讲解正则表达式的模式匹配、文本替换与分组捕获技巧。同时,文章还探讨了性能优化、复杂度管理和安全性等问题及解决策略,助你提升编程效率,应对实际开发挑战。
77 0
|
数据安全/隐私保护
正则表达式--密码复杂度验证--必须包含大写、小写、数字、特殊字符中的至少三项
正则表达式--密码复杂度验证--必须包含大写、小写、数字、特殊字符中的至少三项
854 0
|
6月前
|
算法 安全 C#
C#版开源免费的Bouncy Castle密码库
C#版开源免费的Bouncy Castle密码库
|
6月前
|
JavaScript 数据安全/隐私保护
jquery正则表达式验证手机号密码和姓名字段
jquery正则表达式验证手机号密码和姓名字段
|
存储 数据安全/隐私保护
验证用户名和密码的正则表达式
验证用户名和密码的正则表达式
|
Web App开发 数据采集 测试技术
使用Selenium和代理用户名和密码在C#中进行无头浏览
Selenium是一个自动化测试工具,可以模拟用户在浏览器中的操作。在C#中使用Selenium和爬虫代理加强版IP的时候,因为代理服务器需要用户名和密码进行认证,Chrome浏览器会弹出一个认证窗口要求输入用户名和密码。可以创建一个Chrome扩展插件,然后加载使用完成自动认证窗口。
316 0
使用Selenium和代理用户名和密码在C#中进行无头浏览
|
数据安全/隐私保护
验证密码字符串(正则表达式)
验证密码字符串(正则表达式)
106 0