minghxx.blog
  • 정규식
    2023년 11월 23일 09시 47분 42초에 업로드 된 글입니다.
    작성자: 민발자
    728x90

     

    1. 정규 표현식

    문자열에서 특정한 규칙에 따른 문자열 집합을 표현하기 위해 사용되는 형식 언어

     

     

    2. Groups and ranges

    기호 설명
    | 또는
    () 그룹화
    [] 문자셋, 괄호안의 어떤 문자든
    [^] 부정 문자셋, 괄호안에 어떤 문자가 아닐때
    (?:) 찾지만 기억하지는 않음

     

    2-1. 또는 |

    Hi 또는 Hello에 매칭되는 것을 하이라이트

     

    2-2. 그룹화 ()

    1) 그룹 사용하기 ()

    Hi 또는 Hello에 매칭되는 것을 그룹화 현재 그룹은 1가지만 존재

     

    2) 그룹 여러 개 사용하기 ()()

    Hi 또는 Hello에 매칭되는 것을 그룹 1로 지정, And와 매칭되는 것을 그룹 2로 지정

     

    3) 그룹 활용()

    gr로 시작하고 y로 끝나면서 e 또는 a를 가지고 있는 문자

     

    4) 그룹화 미적용 (?:)

    gr로 시작하고 y로 끝나면서 e 또는 a를 가지고 있는 문자를 찾지만 그룹화하지 않는다.

     

    2-3. 문자셋 []

    1) 문자열 집합체 설정 []

    gr로 시작하고 y로 끝나면서 a나 b, d, g 중 하나라도 만족하고 있는 문자를 찾음

     

    2) 문자열 집합체 범위 설정 [-]

    gr로 시작하고 y로 끝나면서 a부터 g중 하나라도 만족하고 있는 문자를 찾음

    a~z, A~Z, 0~9까지 만족하고 있는 문자를 찾음

     

    3) 부정 문자셋 [^]

    a~z, A~Z, 0~9를 제외한 문자를 찾음


    3. Quantifiers

    기호 설명
    ? 있거나 없거나
    * 있거나 없거나 많거나
    + 하나 또는 많이
    {n} n번 반복
    {min,} 최소
    {min, max} 최소 그리고 최대

     

    3-1. 있거나 없거나 ?

    gr로 시작하고 y로 끝나면서 중간에 a가 있거나 없는 문자열 찾음

     

    3-2. 있거나 없거나 많거나 *

    gr로 시작하고 y로 끝나면서 중간에 a가 없거나 한 개 또는 한 개 이상인 문자열 찾음

     

    3-3. 하나 또는 많이 + 

    gr로 시작하고 y로 끝나면서 중간에 a가 한 개 또는 한 개 이상인 문자열 찾음

    없는 것은 찾지 않음!!

     

    3-4. n번 반복 {n}

    gr로 시작하고 y로 끝나면서 중간에 a가 2번 반복되는 문자열 찾음

     

    3-5. 최소 그리고 최대 {min, max}

    gr로 시작하고 y로 끝나면서 중간에 a가 최고 2번, 최대 3번 반복되는 문자열 찾음

     


    4. Boundary-type

    기호 설명
    \b 단어의 경계
    \B 단어 경계가 아님
    ^ 문장의 시작
    $ 문장의 끝

     

    4-1. 단어의 경계 \b

    1) \b 앞에서 사용

    Ya가 단어 앞에서 시작하는 문자만 찾음 차이점 확인하기!

     

    2) \b 뒤에서 사용

    Ya가 단어 뒤에 있는 문자 찾음

     

    4-2. 단어의 경계 부정 \B

    단어 뒤에서 쓰이지 않는 Ya만 찾음

     

    4-3 문장의 시작 ^

    문장 시작에서 Hi를 찾음, 뒤에 있는 Hi는 찾지 않음

     

    4-4 문장의 끝 $

    문장 끝에서 Hi를 찾음

     


    5. Character classes

    기호 설명
    \ 특수 문자가 아닌 문자
    . 어떤 글자, 줄바꿈은 제외
    \d digit 숫자
    \D digit 숫자 아닌 것
    \w word 문자
    \W word 문자 아닌 것
    \s space 공백
    \S 공백 아닌 것

     

     

    5-1 어떤 글자 .

    모든 글자를 의미한다 . 한 개당 한 글자를 의미

     

    5-2 특수 문자가 아닌 문자 \

    모든 문자를 의미하는 . 이 아닌 진짜 . 을 찾고자 할 땐 \사용

    []와 {}를 찾기 위한 정규표현식

     

    5-3 숫자 \d 

    숫자를 찾음

     

    5-4 숫자가 아닌 것 \D

    숫자가 아닌 것을 찾음

     

    5-5 문자 \w

     

    5-6 문자가 아닌 것 \W

     

    5-7 공백 \s

     

    5-8 공백이 아닌 것 \S

    공백이 아닌 모든 문자열을 찾음

     

     


    6. 예제

    6-1 이메일

     

    6-2 링크 아이디 찾기

     

    6-3 연습 사이트

    https://regexone.com/

     

    RegexOne - Learn Regular Expressions - Lesson 1: An Introduction, and the ABCs

    Regular expressions are extremely useful in extracting information from text such as code, log files, spreadsheets, or even documents. And while there is a lot of theory behind formal languages, the following lessons and examples will explore the more prac

    regexone.com

     

    728x90
    댓글