gpt4 book ai didi

asp.net - 更改密码控制 RegEx 仅在 IE 7 中奇怪地验证

转载 作者:行者123 更新时间:2023-12-04 06:56:20 25 4
gpt4 key购买 nike

我在我的应用程序中使用了 Asp.net 更改密码控件,一切似乎都很好,直到用户告诉我她在更改密码时遇到了满足强度要求的问题。考虑到这一点,她正在使用 IE 7,无论她输入什么,验证都会失败(并且仅在 IE 7 中。Firefox、IE 8、Chrome 等都按预期工作)。这是我正在使用的正则表达式:

^(?=.*\d)(?=.*[a-z])(?=.*[A-Z])(?!.*\s).{5,15}$

我已经尝试了我在整个站点中发现的其他一些以及人们似乎没有问题使用的其他一些,并且我遇到了同样的问题。

似乎我在最后输入的模式(数字、上或下 alpha)是预期重复 5 次的模式。例如:
Hello1 (不起作用)
11111Hello (不起作用)
Hello11111 (作品)

同样,这仅在 IE 7 中可用。我已经在这方面花费了太多时间,但我很困惑。有人有什么想法吗??

最佳答案

显然 Internet Explorer 有一个错误。看看这个帖子:A JScript/VBScript Regex Lookahead Bug .该示例是相同的 - 密码检查 - 它们提供了一种解决方法。使用他们建议的方法作为指导,模式变为:

^(?=.{5,15}$)(?=.*\d)(?=.*[a-z])(?=.*[A-Z])(?!.*\s).*

它们的模式与您的非常相似,除了对空白的负面环视。

尝试使用 .*在环顾四周。仅使用 .只涵盖一个字符,然后是您在环视中指定的任何字符。您想一直向前看,看看是否有任何匹配。我在 Expresso 中尝试了以下表达式,它适用于您列出的示例,并且在无效输入上也按预期失败。
^(?=.*\d)(?=.*[a-z])(?=.*[A-Z])(?!.*\s).{5,15}$

关于asp.net - 更改密码控制 RegEx 仅在 IE 7 中奇怪地验证,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2518232/

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