0
정규식을 jQuery 유효성 검사와 함께 사용하는 데 문제가 있습니다. 나는 8 자 이상 일치하는 데 필요한 간단한 정규식을 가정 :jQuery 유효성 검사에서 정규 표현식이 작동하지 않습니다.
(?=.{8,})
JavaScript-based regular expression tester에 플러그인이, 그것은 잘 작동합니다. 8 자 이상 일치, 7 자 이하는 일치하지 않습니다. 나는 C#에서이를 테스트하는 경우
또한, 그것은뿐만 아니라 작동합니다
var regex = new Regex(@"(?=.{8,})");
if (regex.IsMatch(myInput))
{
// Hits this code when myInput >= 8 characters
}
다음, 나는 사용자의 입력이 표현과 일치하는지 확인하기 위해 jQuery를 확인을 방출 뷰 모델의 ValidationAttribute를 사용
[RegularExpression(@"(?=.{8,})", ErrorMessage="Does not match.")]
public string MyInput { get; set; }
이 시점에서 분해됩니다. 입력란에 무엇을 입력해도 일치하지 않습니다. 방출 된 HTML은 다음과 같습니다.
<input data-val="true" data-val-regex="Does not match."
data-val-regex-pattern="(?=.{8,})" id="MyInput" name="MyInput"
type="text" value="" />
나는 다른 정규식을 시도했지만 아무 소용이 없습니다. 내가 간과하고있는 jQuery 유효성 검사에서 정규 표현식에 대해 다른 점이 있습니까?
흥미 롭습니다. 이 정규식은 웹 페이지에서 작동하지만 서버 코드에서는 실패합니다. 기본적으로 내 원래 문제의 반대. 마치 두 개의 다른 정규 표현식에 입력을 일치시켜야합니다. 하나는 브라우저에, 다른 하나는 서버에서 유효성을 검사하는 것입니다. 이상한. –
흠, 이상합니다. 'RegularExpression (@ ". {8,}")은 어떻습니까? –
방금 C#을 테스트하고 대답의 정규 표현식이 작동합니다. 다른 곳에서 실수하지 않니? –