求个密码的正则表达式,输入的字符串必须包含大写字母、小写字母、数字3种类型,并且在7位数以上。

basehello 2013-09-17 05:58:33
字符串由大写字母、小写字母、数字组成,并且在7位数以上很容易。但字符串必须包含大写字母、小写字母、数字3种类型这个怎么弄?
...全文
1276 18 打赏 收藏 转发到动态 举报
写回复
用AI写文章
18 条回复
切换为时间正序
请发表友善的回复…
发表回复
ppsniffer 2014-07-10
  • 打赏
  • 举报
回复
只要包含大写,小写,数字就OK
ppsniffer 2014-07-10
  • 打赏
  • 举报
回复
/^.*(([A-Z]+.*(([a-z]+.*[0-9]+.*)|([0-9]+.*[a-z]+.*)))|([a-z]+.*(([A-Z]+.*[0-9]+.*)|([0-9]+.*[A-Z]+.*)))|([0-9]+.*(([A-Z]+.*[a-z]+.*)|([a-z]+.*[A-Z]+.*)))).*$/
KsonJsy 2013-09-18
  • 打赏
  • 举报
回复
^(?=.*\d)(?=.*[a-z])(?=.*[A-Z])[a-zA-Z0-9]{7,}$
q107770540 2013-09-18
  • 打赏
  • 举报
回复
update: ^(?![a-z]+$)(?![A-Z]+$)(?!\d+$)(?![a-zA-Z]+$)(?![a-z0-9]+$)(?![0-9A-Z]+$)[a-zA-Z0-9]{7,}$
KsonJsy 2013-09-18
  • 打赏
  • 举报
回复
引用 12 楼 q107770540 的回复:
[quote=引用 楼主 basehello 的回复:] 字符串由大写字母、小写字母、数字组成,并且在7位数以上很容易。但字符串必须包含大写字母、小写字母、数字3种类型这个怎么弄?
这个要用排除法: ^(?![a-z]+$)(?![A-Z]+$)(?!\d+$)[a-zA-Z0-9]{7,}$[/quote]这个不满足字符串必须包含大写字母、小写字母、数字3种类型,即都要一个这个条件“11111WW1”都可以匹配,这个只满足一个字母,一个数字,
KsonJsy 2013-09-18
  • 打赏
  • 举报
回复
^(?=[a-zA-Z0-9]{0,}\d{1,})(?=[a-zA-Z0-9]{0,}[a-z]{1,})(?=[a-zA-Z0-9]{0,}[A-Z]{1,}).{7,14}$ 试试这个
q107770540 2013-09-18
  • 打赏
  • 举报
回复
引用 楼主 basehello 的回复:
字符串由大写字母、小写字母、数字组成,并且在7位数以上很容易。但字符串必须包含大写字母、小写字母、数字3种类型这个怎么弄?
这个要用排除法: ^(?![a-z]+$)(?![A-Z]+$)(?!\d+$)[a-zA-Z0-9]{7,}$
KsonJsy 2013-09-18
  • 打赏
  • 举报
回复
引用 8 楼 basehello 的回复:
[quote=引用 7 楼 caozhy 的回复:] 其余5种按照这个类似的写好,最后用 | 连起来。
不会写。找了个现成的 ^(?=.*\d)(?=.*[a-z])(?=.*[A-Z]).{7,14}$[/quote]你这个也不行啊,星号代表的是任意的,比如“多久eeeewwW1”这个也是匹配的密码
KsonJsy 2013-09-17
  • 打赏
  • 举报
回复
额,你的是对的,后面那个*不要了
KsonJsy 2013-09-17
  • 打赏
  • 举报
回复
^(?=.*[0-9].*)(?=.*[A-Z].*)(?=.*[a-z].*).{7,16}$
basehello 2013-09-17
  • 打赏
  • 举报
回复
引用 7 楼 caozhy 的回复:
其余5种按照这个类似的写好,最后用 | 连起来。
不会写。找了个现成的 ^(?=.*\d)(?=.*[a-z])(?=.*[A-Z]).{7,14}$
threenewbee 2013-09-17
  • 打赏
  • 举报
回复
其余5种按照这个类似的写好,最后用 | 连起来。
threenewbee 2013-09-17
  • 打赏
  • 举报
回复
文章没有仔细看,但是后面我思路已经说了匹配这六种排列组合的并集 比如第一种 大写小写数字 [^A-Z]*[A-Z]+[^a-z]*[a-z]+[^0-9]*[0-9]+.*
threenewbee 2013-09-17
  • 打赏
  • 举报
回复
引用 3 楼 basehello 的回复:
[quote=引用 1 楼 caozhy 的回复:] http://hi.baidu.com/freely568/item/15015308742c428b03ce1bac
版主太不负责了。我前面可能没说清楚,我指的是字符串不仅仅由大写字母、小写字母、数字3种类型组成,并且字符串中至少包含一个大写字母、小写字母、数字。[/quote] 是啊。我就是这个意思啊。
basehello 2013-09-17
  • 打赏
  • 举报
回复
引用 2 楼 caozhy 的回复:
好吧,看了下,也没有什么高明的。 思路就是排列组合:大写小写数字 或 小写大写数字 或 大写数字小写 或 数字大写小写 或小写数字大写 或数字小写大写
这个不行啊,比如字符串是R1a1R1a怎么弄?感觉这问题没办法用正则表达式来写。
basehello 2013-09-17
  • 打赏
  • 举报
回复
引用 1 楼 caozhy 的回复:
http://hi.baidu.com/freely568/item/15015308742c428b03ce1bac
版主太不负责了。我前面可能没说清楚,我指的是字符串不仅仅由大写字母、小写字母、数字3种类型组成,并且字符串中至少包含一个大写字母、小写字母、数字。
threenewbee 2013-09-17
  • 打赏
  • 举报
回复
好吧,看了下,也没有什么高明的。 思路就是排列组合:大写小写数字 或 小写大写数字 或 大写数字小写 或 数字大写小写 或小写数字大写 或数字小写大写
threenewbee 2013-09-17
  • 打赏
  • 举报
回复
http://hi.baidu.com/freely568/item/15015308742c428b03ce1bac
第6章 资料验证技术 119 6.1 网络验证应用技巧 120 0197 如何使用正则表达式验证E-mail格式 120 0198 如何使用正则表达式验证IP地址 120 0199 如何使用正则表达式验证URL 120 6.2 常用数字验证技巧 121 0200 如何使用正则表达式验证电话号码 121 0201 如何使用正则表达式验证输入密码条件 121 0202 如何使用正则表达式验证邮政编号 121 0203 如何使用正则表达式验证手机号 122 0204 如何使用正则表达式验证身份证号 122 0205 如何使用正则表达式验证两位小数 122 0206 如何使用正则表达式验证一年的12个月份 123 0207 如何使用正则表达式验证一个月的31天 123 0208 如何使用正则表达式验证数字输入 123 0209 如何使用正则表达式验证密码长度 124 0210 如何使用正则表达式验证非零的正整数 124 0211 如何使用正则表达式验证非零的负整数 124 6.3 常用字符验证技巧 125 0212 如何使用正则表达式验证大写字母 125 0213 如何使用正则表达式验证小写字母 125 0214 使用正则表达式检查字符串中重复出现的词 125 0215 如何使用正则表达式替换字符串 126 0216 如何使用正则表达式拆分字符串 127 0217 如何使用正则表达式验证输入字母 127 0218 如何使用正则表达式验证中文汉字输入 128 0219 如何使用正则表达式验证输入字符串 128 第7章 日期和时间 129 7.1 日期与时间的获取 130 0220 获得系统当前日期 130 0221 获得系统当前时间 130 0222 同时获得系统当前日期和时间 130 0223 如何获取当前日期是/////////////// /////////////

110,571

社区成员

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

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

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