Develop/Javascript

[Javascript] 자바스크립트 정규표현식 체크

GuriZzang 2014. 2. 20. 01:10

이 포스팅은 자바스크립트 정규식(정규표현식)에 대해서 상세히 알려드릴려는게 아니라..

웹페이지 작성시 매번 찾게되는 아이디 체크 와 같은 스크립트를 포스팅 해봅니다.

 

 

기본적으로 자바스크립트에서 정규표현식은 / (슬래쉬)로 감싼다

"(큰따옴표) 또는 '(작은따옴표)로 감싸지 않는다.

 

그리고 마지막에 /g 또는 /i 또는 /gi 로 끝난다

왜 그런지 궁금하면 각자 찾아보는 걸로 한다~

 

아래에서 뜻하는 정규 표현식은 영문 a-z 로 시작하고 이후에 a-z0-9 사이 문자열이 오면 된다는 것이다.

대괄호 앞에 ^가 붙으면 시작을 뜻하고 대괄호 안에 ^가 붙으면 제외를 뜻한다.

^[a-z]로 되어 있으니 시작을 영문 a-z로 하는 것을 뜻한다

+ 연산자로 연결을 한다.

{5,19}는 5~19자리를 뜻한다.

 

앞에서 ^[a-z]에서 1자리를 먹었으니 이후에  [a-z0-9]{5,19} 5~19자리이니...

결국은 6~20 자리를 뜻한다.

 

$가 붙으면 끝을 뜻한다.

 [a-z0-9]{5,19}$ 이니.. 영문소문자 또는 숫자로 끝이 나면 된다.

 

        var idReg = /^[a-z]+[a-z0-9]{5,19}$/g;
        if( !idReg.test( $("input[name=uid]").val() ) ) {
            alert("아이디는 영문자로 시작하는 6~20자 영문자 또는 숫자이어야 합니다.");
            return;
        }

 

아래에는 예제들이다.

 

[영문 대문자 또는 소문자로 시작하는 아이디, 끝날때 영문 대문자 또는 소문자]

 var idReg = /^[A-za-z]$/g;

 

[영문 대문자 또는 소문자로 시작하는 아이디, 끝날때 제한 없음]

var idReg = /^[A-za-z]/g;

 

[영문 대문자 또는 소문자 또는 숫자로 시작하는 아이디, 끝날때 영문 대문자 또는 소문자 또는 숫자]

var idReg = /^[A-za-z0-9]$/g;

 

[영문 대문자 또는 소문자 또는 숫자로 시작하는 아이디, 끝날때 제한 없음]

var idReg = /^[A-za-z0-9]/g;

 

[영문 대문자 또는 소문자로 시작하는 아이디, 길이는 5~15자, 끝날때 영문 대문자 또는 소문자]

var idReg = /^[A-za-z]{5,15}$/g;

 

[영문 대문자 또는 소문자로 시작하는 아이디, 길이는 5~15자, 끝날때 제한 없음]

var idReg = /^[A-za-z]{5,15}/g;

 

[영문 대문자 또는 소문자 또는 숫자로 시작하는 아이디, 길이는 5~15자, 끝날때 영문 대문자 또는 소문자 또는 숫자]

var idReg = /^[A-za-z0-9]{5,15}$/g;

 

[영문 대문자 또는 소문자 또는 숫자로 시작하는 아이디, 길이는 5~15자, 끝날때 제한 없음]

var idReg = /^[A-za-z0-9]{5,15}/g;

 

더 많은 조합들이 있겠지만.. 매번 찾는 아이디 체크에 대해서 작성해 보았습니다.