2016-07-25 68 views
-1

我有以下正则表达式代码,可以在正则表达式验证代码上正常工作,但不在我的网站上(使用ASP.NET MVC构建)。它验证长度和数字,但不是没有特殊字符。正则表达式密码验证在正则表达式验证网站上正常工作,但不在我的网站上

我的正则表达式:/^(?=.*[[email protected]@#$&](?=.*[A-Z]))(?=.*[0-9])(?=.*[a-z]).{8,}$/

在我的网站Toto1234被认为是好的,但不被因为它不包含特殊字符的情况。

+0

你能提供一些模式应该/不应该匹配的具体例子吗?因为上面给出的模式与“Toto1234”不匹配,并且不匹配每个可能符合您所提供的(相当差的措辞)规则的密码。 –

+0

@SebastianLenartowicz,谢谢你指出这一点。我重新编写它以涵盖所有特殊字符。这里是:^(?=。* [AZ])(?=。*?[#?!@ $%^&* - ])(?=。* [0-9])(?=。* [ az])。{8,} $ – Francky

回答

0

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

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

在我的情况下,因为我有不同的正则表达式(在我看来 - 通过jQuery和我的模型),客户端验证工作,因为我有正确的正则表达式。但服务器端验证没有。我必须确保我的课上也有正确的正则表达式。

希望这个更清楚。

+0

SO不是论坛。请提供具体的信息,说明您如何解决问题,以便其他人可能受益,并使用复选标记将问题标记为“已回答”。 –

+0

@SebastianLenartowicz,我知道SO不是论坛。你不需要提醒我。这个问题不在我发布的正则表达式中,而是在我的代码中。这是与asp.net MVC相关。所以如果你有一个MVC的背景,我想你可能理解我说的话。我会更新我的答案,但我想知道你期待什么样的细节。 – Francky