2012-01-19 4 views
4

product_id의 값은 글자와 숫자의 조합 일 수 있습니다 (예 : GB47NTQQ).자바 스크립트 와일드 카드 변수?

3 번째와 4 번째 문자를 제외한 모든 문자가 같은지 확인하고 싶습니다. 같은

뭔가 :

if product_id = GBxxNTQQ //where x could be any number or letter. 
    //do things 
else 
    //do other things 

이 어떻게 자바 스크립트와 함께이 작업을 수행 할 수 있습니까?

답변

9

정규 표현식과 string.match()를 사용하십시오. 마침표는 단일 와일드 카드 문자입니다. 당신은 여기에 대한 자세한 내용은 찾을 수

if ('GB47NTQQ'.match(/^GB..NTQQ$/)) { 
    // yes, matches 
} 
+0

이 글은 오래되었지만 OP가 문자와 숫자를 찾기 때문에'/ GB \ w \ wNTQQ /'를 사용하시기 바랍니다. '\ w'는 영숫자와 언더 스코어와 일치합니다. 밑줄을 제외하고 영숫자 만 사용하려면 다음을 할 수 있습니다.'/ GB [a-zA-Z0-9] {2} NTQQ /' – Andrew

0
if (myString.match(/regex/)) { /*Success!*/ } 

:

string.match(/GB..NTQQ/); 
2

답변 지금까지 match을 제안,하지만 test는 반환으로 가능성이 더 적합 진실 또는 거짓matchnull 또는 일치하는 배열을 반환하므로 조건 내에서 결과의 유형 변환 (암시 적)이 필요합니다.

if (/GB..NTQQ/.test(product_id)) { 
    ... 
} 
+0

차이가 많이 있지만, 그래, 맞아 ... +1 :) – deceze