본문 바로가기
javascript

정규식 javascript

by 새로운 도전을 위한 한걸음 2015. 5. 10.
자바스크립트 객체
- 자바스크립트 내장객체
- 브라우저 객체모델(BOM)
- 문서 객체모델(DOM)
- 사용자 정의 객체

정규 표현식(패턴식)
- 특정 패턴을 갖는 문자열을 검색하기 위한 표현식

사용요소
1. .
    - 모든 문자 중 1개의 문자
    - ex) 011-...-....  ->dfvd011-123-9999fvreverv011-555-1234awdqwdq011-aaa-bbbbwd : 011-123-9999, 011-555-1234, 011-aaa-bbbb 를 찾아낸다.
    
2.
    - 생략X, 중복X, 무조건 1회
    - ex) ab -> 반드시 a 가 한번나와야되고 b가 한번나와야 된다.
                qwdqwdqdf sdf tabbn -> ab 를 찾는다.
                
3. +
    - 생략X, 중복O
    - ex) a+b -> aawdqwdqdqwd aaaaaaaaab   :  aaaaaaaaab 를 찾는다.

4. ?
    - 생략O, 중복X
    - ex) a?b -> b를 찾거나 ab를 찾거나..
            011-.?...-.... : 뒤에는 무조건 4자리, 가운데는 3자리든 4자리든 찾는다.

5. *
    - 생략 O, 중복O
    - ex) a*b
    
6. ^
    - 시작문자열을 의미, 문자열앞에 붙는다.
    - ex) ^This -> This is BBB, alseqwdqwd This qwdqwdqw,  : This를 찾긴찾되 This로 시작할때만 찾는다. 따라서 후자예제는 못찾는다.
           ^안녕
           
7. $
    - 끝 문자열을 의미, 문자열 뒤에 붙는다.
    - ex) st$ -> Test, start, Pianist : Test 와 Pianist 만 반환된다.
           
8. []     ★★
    - 범위 표현 & 열거형 (단일선택)
    - ex) 숫자인지? 0~9
            [0123456789] - 숫자 한자리를 찾아라.
            [0123456789][0123456789] - 숫자 두자리를 찾아라
            [가나다라] - 한문자를 찾아라.
            [24680] - 짝수중 숫자한자리를 찾아라.
            [abcdefgxyz]
            
            [0-9] : 단축표현 01[0-9] -
            [a-z] : 단축표현
            [A-Z] : 단축표현
            [가-�] : 박[가-�][가-�] : 박씨성을 가진사람을 찾아라
            [a-zA-Z0-9_] -> [abcde...xyzABCDEF...XYZ0123456789_] : 아이디검사시 대/소문자 영어 와 숫자와 언더바만 써라.

9. {}
    - 출현횟수
    - {n} : 무조건 n개 만큼나와야되다
    - {n,} : 최소 n 부터 최대무한대까지 가능하다
    - {n,m} : 최소 n 부터 최대 m 까지 가능하다.
    ex) t{2,3}est : ttest, tttest
        핸드폰번호를 찾아라.. : 01[0-9] - [0-9]{3,4] - [0-9]{4}
        박씨 : 박[가-�]{1,3}
        주민번호 : [0-9]{6}-?[0-9]{7} // 700101-1010101 , 7001011010101 두개다 찾겠다 라는 뜻.
        주민번호 좀더 디테일 하게: [4-9][0-9][01][0-9][03][09]-?[12][0-9]{6}                
        아이디(영문자 4-8자이내) : [a-zA-Z]{4,8}
        아이디(영문자 4-8자이내, 숫자사용O, 단 영문으로 시작, _사용 가능) : [a-zA-Z_]{1}[a-zA-Z0-9_]{3,7}