Asp.net Regex密码验证在Regex验证站点上运行良好,但在我的站点上运行不好

Asp.net Regex密码验证在Regex验证站点上运行良好,但在我的站点上运行不好,asp.net,regex,asp.net-mvc,asp.net-mvc-3,asp.net-mvc-4,Asp.net,Regex,Asp.net Mvc,Asp.net Mvc 3,Asp.net Mvc 4,我有下面的正则表达式代码,它在正则表达式验证代码上运行良好,但在我的网站(用ASP.NET MVC构建)上运行不好。它验证长度和数字,但不验证是否缺少特殊字符 我的正则表达式:/^(?=.[!@@$&](?=.[A-Z])(?=.[0-9])(?=.[A-Z])。{8,}$/ 在我的网站上,Toto1234被认为是不错的,但事实并非如此,因为它不包含特殊字符 基本上我是在查看我的视图,但没有对我的模型做任何更改。我的模型有一个不检查特殊字符的正则表达式。但在我看来,有一个脚本可以检查密码是否与正

我有下面的正则表达式代码,它在正则表达式验证代码上运行良好,但在我的网站(用ASP.NET MVC构建)上运行不好。它验证长度和数字,但不验证是否缺少特殊字符

我的正则表达式:
/^(?=.[!@@$&](?=.[A-Z])(?=.[0-9])(?=.[A-Z])。{8,}$/


在我的网站上,Toto1234被认为是不错的,但事实并非如此,因为它不包含特殊字符

基本上我是在查看我的视图,但没有对我的模型做任何更改。我的模型有一个不检查特殊字符的正则表达式。但在我看来,有一个脚本可以检查密码是否与正则表达式匹配

编辑:更清楚的解决方案是确保视图模型或类使用正确的正则表达式进行修饰。在您尝试提交表单之前,查看我的临时工作中的任何正则表达式检查和/或验证

在我的例子中,因为我必须使用不同的正则表达式(在我看来——通过jquery——和我的模型),所以客户端验证工作正常,因为我有正确的正则表达式。但服务器端验证没有。我必须确保我的课堂上也有正确的正则表达式


希望这更清楚

你能提供一些具体的例子说明模式应该/不应该匹配什么吗?因为您上面给出的模式与1234不匹配,也不会匹配所有符合您给出的规则(措辞相当糟糕)的密码。@SebastianLenartowicz,感谢您指出这一点。我重新写了它来涵盖所有的特殊角色。这里是:^(?=.[A-Z])(?=.[#?!@$%^&*-])(?=.[0-9])(?=.[A-Z])。{8,}$所以不是论坛。请提供具体信息,说明您是如何解决问题的,以使其他人受益,并使用复选标记将问题标记为“已回答”。@SebastianLenartowicz,我知道这不是一个论坛。你不需要提醒我。问题不在我发布的正则表达式中,而是在我的代码中。它与asp.NETMVC相关。所以如果你有MVC的背景,我想你可能已经明白我说的了。我会更新我的答案,但我想知道你期待什么样的细节。