Учусь asp.net mvc
Есть модель:
public class LoginViewModel
{
[Display(Name = "Логин")]
[Required(ErrorMessageResourceName = "RequiredField", ErrorMessageResourceType = typeof(Resources.Resources))]
public string Login { get; set; }
[Display(Name = "Пароль")]
[DataType(DataType.Password)]
[Required(ErrorMessageResourceName = "RequiredField", ErrorMessageResourceType = typeof(Resources.Resources))]
[RegularExpression("/(?=.*[0-9])(?=.*[!@#$%^&*])(?=.*[a-z])(?=.*[A-Z])[0-9a-zA-Z!@#$%^&*]", ErrorMessageResourceName = "PasswordIsNotValid", ErrorMessageResourceType = typeof(Resources.Resources))]
public string Password { get; set; }
}
Вывожу на странице так:
<div class="common-row">
<label class="common-label">
@Resources.NewPassword
</label>
@Html.TextBoxFor(model => model.Password, new { @class = "common-input", type = "password" })
<div class="error__input">
@Html.ValidationMessageFor(model => model.Password, "", new { @class = "text-danger" })
</div>
</div>
Правила для валидации такие:
1. Пароль должен содержать как минимум одну заглавную букву
2. Пароль должен содержать как минимум одну строчную букву
3. Пароль должен содержать как минимум один спецсимвол
4. Пароль должен содержать как минимум одину цифру
Выражение (?=.*[0-9])(?=.*[!@#$%^&*])(?=.*[a-z])(?=.*[A-Z])[0-9a-zA-Z!@#$%^&*] проверял на regex101 и вроде все работает.
Но, когда на сайте пытаюсь ввести пароль, то ругается мол пароль не соответствует правилам. Не понимаю, что я делаю не так