Internet Explorer 7的正则表达式帮助

时间:2013-04-04 09:28:59

标签: asp.net regex

正则表达式不是我的强项,但我一直在使用以下内容来验证密码是8到20个字符,并且至少有一个数字和一个大写和小写字符。

((?=.*\d)(?=.*[A-Z])(?=.*[a-z]).{8,20})

所有工作正常,直到我在Internet Explorer中测试,它将所有密码都恢复为无效。

这是由于此处描述的Internet Explorer 7错误IE7 regex issue - Regex that work in every browser does not work in ie7

根据上述问题的博客文章,我看到有些人说在大多数情况下,正则表达式可以重新编写,以便它可以在IE7上工作,但正如我所说,我的正则表达式知识不是最好的,所以如果有人新的如何在IE7上做上述工作会很棒。

我正在使用ASP.NET,所以另一个选择是将EnableClientScript设置为False,以便在服务器端检查正则表达式,但是如果可能的话,我宁愿首先检查客户端。

1 个答案:

答案 0 :(得分:1)

只看您发布的链接。 here you go

/((?=.{8,20})(?=.*\d)(?=.*[A-Z])(?=.*[a-z]).*)/

另外,按照相同的链接,这也应该有效:

/((?=.+\d)(?=.+[A-Z])(?=.+[a-z]).{8,20})/