2014-11-25 3 views
0

다음 데이터 패턴 "I-MH-ABCD-ABC-1222"에 대한 텍스트 필드의 유효성을 검사합니다.문자열과 일치하지 않는 작성된 패턴 Javascript/Jquery

다음은 내가 작성한 RegEx이며 작동하지 않습니다.

var router_added_sap = "I-MH-ABCD-ABC-1222"; 
var pattern = /^[a-zA-Z]{1}\-[a-zA-Z]{2}\-[a-zA-Z]{4}\-[a-zA-Z]{3}\-\d/; 

if(!router_added_sap.match(pattern)) 
{ 
    alert("Please Enter Right SAP-IDasa"); 
    return false; 
} 

사용자가 작성한 올바른 패턴 스크립트가 경고 메시지를 표시하고 있지만.

+0

첫 번째 변수는'couter_added_sap'이고'router_added_sap'를 체크하고 있느냐? –

+1

또한, 한 자리 숫자 '\ d'에 대해서만 유효성을 검사하고 있습니다. –

+0

미안하지만. 질문이 업데이 트되었습니다 .. – Mahendra

답변

0

분명히 대시를 벗어날 필요가 없습니다. 또한 이들 각각을 그룹화해야합니다. 이러한 것들이 하나의 필드에서 사용된다면 문자열 (^)의 시작과 문자열 ($)의 끝을 확인하고 끝 (i)의 무시 플래그를 적용하는 것이 좋습니다. 끝 부분의 (+)는 하나 이상의 자릿수를 확인하고 그 모두를 잡는 한정 기호입니다. 그래서 저는 그걸 그대로 다시 쓰겠습니다.

var router_added_sap = "K-MH-ABCD-ABC-1222"; 
var pattern = /^([A-Z]{1})-([A-Z]{2})-([A-Z]{4})-([A-Z]{3})-\d+$/i; 

if(!router_added_sap.match(pattern)) 
{ 
    alert("Please Enter Right SAP-IDasa"); 
    return false; 

} 

http://www.regexr.com/은 정규식 작성에 도움이됩니다. 나는 또한 내가 찾은 훌륭한 책상을 내 책상 위에두고있다. http://cheatography.com/1/cs/5/

관련 문제