求一正则表达式,判断密码必须是数字,字母大写,字母小写,特殊字符,这四种的必须包含三个

tianyasuixiang1 2010-11-17 02:49:26
求一正则表达式,判断密码必须是数字,字母大写,字母小写,特殊字符,这四种的必须包含三个,先谢谢大家了
...全文
4218 11 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
11 条回复
切换为时间正序
请发表友善的回复…
发表回复
兔子-顾问 2010-11-18
  • 打赏
  • 举报
回复
其实还有个情况。p1,p3,p4的没考虑。加上...

(?x)^((?<p1>\d)|(?<p2>[a-z])|(?<p3>[A-Z])|(?<p4>[\W_]))+(?(p1)(?(p2)(?(p3)|(?(p4)|(?!)))|(?(p3)(?(p4)|(?!))|(?!)))|(?(p2)(?(p3)(?(p4)|(?!))|(?!))|(?!)))$


其实也想复杂了,不要判断有哪些,反过来容易一点……
(?x)^((?<p1>\d)|(?<p2>[a-z])|(?<p3>[A-Z])|(?<p4>[\W_]))+(?(p1)(?(p2)(?(p3)|(?(p4)|(?!)))|(?(p3)(?!(p4)|(?!))|(?!)))|(?(p2)(?(p3)(?(p4)|(?!))|(?!))|(?!)))$
兔子-顾问 2010-11-17
  • 打赏
  • 举报
回复
对了,7楼的写法只能叫条件表达式,不能叫平衡组,因为只入栈,没出栈。
tianyasuixiang1 2010-11-17
  • 打赏
  • 举报
回复
谢谢 逍遥
兔子-顾问 2010-11-17
  • 打赏
  • 举报
回复
[Quote=引用 4 楼 cj205 的回复:]
引用 3 楼 wuyazhe 的回复:

^(?![0-9a-z]+$)(?![0-9A-Z]+$)(?![0-9\W]+$)(?![a-z\W]+$)(?![a-zA-Z]+$)(?![A-Z\W]+$)[a-zA-Z0-9\W_]+$
逍遥
发个平衡组的写法看看?
[/Quote]

满足你

(?x)^((?<p1>\d)|(?<p2>[a-z])|(?<p3>[A-Z])|(?<p4>[\W_]))+(?(p1)(?(p2)(?(p3)|(?(p4)|(?!)))|(?(p3)|(?!)))|(?(p2)(?(p3)(?(p4)|(?!))|(?!))|(?!)))$
int64 2010-11-17
  • 打赏
  • 举报
回复
这密码要求太高了吧
用指纹验证吧,很方便的,我这做指纹仪的
兔子-顾问 2010-11-17
  • 打赏
  • 举报
回复
平衡组会很长,一堆的条件判断…
Mr-Jee 2010-11-17
  • 打赏
  • 举报
回复
[Quote=引用 3 楼 wuyazhe 的回复:]

^(?![0-9a-z]+$)(?![0-9A-Z]+$)(?![0-9\W]+$)(?![a-z\W]+$)(?![a-zA-Z]+$)(?![A-Z\W]+$)[a-zA-Z0-9\W_]+$
[/Quote]逍遥
发个平衡组的写法看看?
兔子-顾问 2010-11-17
  • 打赏
  • 举报
回复
^(?![0-9a-z]+$)(?![0-9A-Z]+$)(?![0-9\W]+$)(?![a-z\W]+$)(?![a-zA-Z]+$)(?![A-Z\W]+$)[a-zA-Z0-9\W_]+$
兔子-顾问 2010-11-17
  • 打赏
  • 举报
回复
try
if(Regex.IsMatch(password,@"^(?![0-9a-z]+$)(?![0-9A-Z]+$)(?![0-9\W]+$)(?![a-z\W]+$)(?![a-zA-Z]+$)(?![A-Z\W]+$)[a-zA-Z0-9\W_]+$")
{
//符合要求
}
Teng_s2000 2010-11-17
  • 打赏
  • 举报
回复
[^\u4e00-\u9fa5]{3,5}
3-5位的非中文

应该就可以满足的吧

111,097

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • AIGC Browser
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧