首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何使用正则表达式验证密码?

问如何使用正则表达式验证密码?
EN

Stack Overflow用户
提问于 2009-09-30 06:32:06
回答 2查看 1K关注 0票数 0

如何使用正则表达式验证密码中的字符?密码必须至少包含1个特殊字符、1个数字和1个字母。长度不能超过8个字符。

EN

回答 2

Stack Overflow用户

发布于 2009-09-30 06:34:46

你必须使用正则表达式吗?它看起来不适合这项工作。

相反,我将实现一个函数,该函数检查您希望看到的每个字符,并检查长度。该函数将比尝试执行相同操作的正则表达式更易于阅读。

票数 6
EN

Stack Overflow用户

发布于 2009-09-30 07:13:34

正则表达式:

^(?=.*\d)(?=.*[a-zA-Z])(?=.*[@#$%^&+=]).*$

将匹配

  • 至少1位,
  • 至少1个字母,
  • 至少一个特殊字符

特殊字符为'@', '#', '$', '%', '^', '&', '+'和'=',允许的特殊字符可以通过更改第三个前瞻组来更改。

然而,我无法使用正则表达式使其匹配最大长度,这意味着很可能是正确的,而正则表达式不适用于此。给定的正则表达式根据三个匹配的前瞻组强制最小密码长度为3。您可以像Jonathan在他的评论中建议的那样,通过添加一个额外的前瞻组来强制执行最小长度:例如,(?=.{8.})给出的最小长度为8。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/1496411

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档