ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • 정규표현식
    IT 2013. 11. 27. 18:23
    반응형

    정규 표현식 

    알면 편리하고 모르면 노가다 한다

     

    '.'  => 점

    임의의 한 문자

    '*'

    바로 앞의 문자가 없거나 하나 이상

    '+'

    바로 앞의 문자가 하나 이상

    '?'

    바로 앞의 문자가 없거나 하나뿐인 경우

    '^'

    바로 뒤의 문자열로 시작

    '$'

    바로 앞의 문자열로 종료

    '[ ]'

    [ ] 안에 있는 문자 중 하나 (범위 -)

    [a-z] -> 알파벳 소문자

    [a-zA-Z] -> 알파벳

    [0-9] -> 숫자

    [가-힣] -> 한글

    '{ }'

    { } 앞의 문자나 문자열의 출현 횟수

    '( )'

    ( )안에 있는 문자를 그룹화

     

    '|'

    or 연산자

    특수문자

    ^ [] $ () | * + ? {} \

    앞부분에 \

    \d : 정수

    \d{2, 3} - / d{3,4} - / d{4} : 전화번호 찾는 정규식

    \D : 숫자가 아닌 나머지 모두

    \w : [a-zA-Z0-9]의 줄임 표현

    \W : [^a-zA-Z0-9] 영문자와 숫자만 아니면 됨.

    \s : 공백

    \S : 공백이 아닌 나머지

     

    ^ 라인의 첫 글자 ^a a자로 시작하는 라인

     

    $ 라인의 끝 글자 a$ a자로 끝나는 라인

     

    . 한 글자 a...b a와 b 사이에 3 글자가 있는 단어

     

    * * 기호 바로 이전의 글자나 정규 표현식이 0회 이상 반복

    abc* c가 0번 이상 반복 ab, abc, abcc, abccc 등

     

    [ ] 한글자를 대체할 글자의 목록을 []내에 지정

    "-" 기호와 함께 쓰면 문자의 범위를 지정할 수 있음

    [abc]d ad, bd, cd를 뜻함, a,b,c 중 어떤 한 글자라도 반드시 있는 단어

    "[a-z]"는 a부터 z까지 중 하나, "[1-9]"는 1부터 9까지 중의 하나를 뜻함

     

    [^] 한글자를 대체하지 못하는 글자의 목록을 []내에 지정

    "-" 기호와 함께 쓰면 문자의 범위를 지정할 수 있음

    [^abc]d ad, bd, cd는 포함하지 않고 ed, fd 등을 포함

    [^a-z]는 알파벳 소문자로 시작하지 않는 모든 문자를 나타냄

     

    + + 기호 바로 이전의 글자나 정규 표현식이 1회 이상 반복

    abc+ c가 1회 이상 반복 : abc, abcc, abccc 등

     

    ? ? 기호 바로 이전의 글자나 정규 표현식이없거나 1회만 존재

    abc? c가 없거나 한번만 존재 : ab, abc

     

    () 부분 정규 표현식의 시작과 끝을 표시  

    a(bc)* bc가 0회 이상 반복 : a, abc, abcbc 등

    a(bc)+ bc가 1회 이상 반복 : abc, abcbc 등

    a(bc)? bc가 있거나 없거나 : a, abc

     

    ¦ ¦로 구분된 단어들 중 최소 하나가 존재 a(b¦c) b 또는 c가 최소 하나 존재 : ab, ac, abc, acb

     

    {m,n} {} 기호 바로 이전의 글자나 정규 표현식이 m개 이상 n개 이하 반복

    a{1,3}b 'ab', 'aab', 'aaab'를 포함하지만,'b'나 'aaaab'는 포함하지 않음

     

    (?=) : 전방탐색. 찾고자 하는 표현식 뒤에 전방탐색 표현식을 넣으며(?= 와 ) 사이에 표현식을 넣습니다. 
    전방탐색 표현식을 통해 문자가 존재하고, 그 앞에 찾고자 하는 문자가 존재할 때 일치합니다. 
    특정 문자가 포함된 문자를 찾고 싶지만 결과에 포함하고 싶지는 않을 때 사용합니다.

    (?<=) : 후방탐색. 후방탐색 표현식 (?<= 와 ) 사이에 표현식을 넣고, 찾고자 하는 표현식을 작성합니다. 
    후방탐색 표현식을 통해 문자가 존재하고, 그 뒤에 찾고자 하는 문자가 존재할 때 일치합니다. 전방탐색과 유사하죠.

    반응형

    댓글

Designed by Tistory.