gpt4 book ai didi

asp.net - 密码的正则表达式匹配

转载 作者:行者123 更新时间:2023-12-02 01:59:15 24 4
gpt4 key购买 nike

我正在使用 VB 在 ASP.Net 中构建一个表单,我有一个文本框,我想根据以下规则对其进行验证:

  • 长度必须为 6 - 20 个字符
  • 可以包含字母也可以是所有字母
  • 可以包含以下特殊字符:!@#$%^&*+-=(){}:;,'./?
  • 不能包含任何空格。
  • 不能全是数字,也不需要数字
  • 大小写无关紧要

这些要求不是我设定的...这正是我必须处理的。

因此,以下将匹配:

TestUserPass
Te$tU$e^p@%}
testuserpass
test{user}n@ame

以下内容不匹配:

8392039
dhj#5|3j

希望这能让我知道我在寻找什么......

这是我目前所拥有的:\b[a-zA-Z0-9!@#\$%\^&\*\+=\(\){}:;,'\./\?-]{6,20}\b

我相信这对所有事情都有效,除了使条目全是数字的实例无效。这是我一直在努力解决的所有数字部分,尽管也许有人会发现我已经拥有的部分存在缺陷。非常感谢任何帮助!

最佳答案

你应该使用不同的 anchor ,你可以使用 negative lookahead assertion确保存在除数字以外的其他字符:

^(?![0-9]*$)[a-zA-Z0-9!@#\$%^&*+=(){}:;,'./?-]{6,20}$

此外,您不需要在字符类中转义(大多数)正则表达式元字符,因为它们在那里没有特殊含义。

关于asp.net - 密码的正则表达式匹配,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18131885/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com