码迷,mamicode.com
首页 > Windows程序 > 详细

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

时间:2014-11-13 16:23:56      阅读:618      评论:0      收藏:0      [点我收藏+]

标签:style   blog   http   io   ar   os   sp   div   on   

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

而在代码中检查密码复杂度就需要用到正则表达式,比如要求密码必须包含数字、小写或大写字母、特殊字符、字符数在 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])

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

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

标签:style   blog   http   io   ar   os   sp   div   on   

原文地址:http://www.cnblogs.com/XingchenStudio/p/4095115.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!