정리

정규표현식(Regular Expressions) 문법

저장소/잡다한거

정규표현식 책 추천 -> 손에 잡히는 정규표현식



정규표현식(Regular Expressions) 문법 정리


기본 메타 문자 

.

모든 문자와 일치 

|

왼쪽 혹은 오른쪽과 일치 

[] 

문자 집합 구성원 중 하나와 일치 

[^]

문자 집합 구성원을 제외하고 일치

-

범위 정의 ( [A-Z]와 같은 형태 )

\

다음에 오는 문자를 이스케이프

 수량자

*

문자가 없는 경우나 하나 이상 연속하는 문자 찾기

*?

게으른 * 문자

+

문자 하나 이상 찾기

+?

게으른 + 문자

?

문자가 없거나 하나인 문자 찾기

{n}

정확히 요소와 n번 일치

{m,n} 

요소와 m에서 n번 일치

{n,}

요소와 n번 이상 일치

{n,}?

게으른 {n,}

위치 지정 

^

문자열의 시작과 일치

\A

문자열의 시작과 일치

$

문자열의 끝과 일치

\Z

문자열의 끝과 일치

\<

단어의 시작과 일치

\>

단어의 끝과 일치

\b

단어 경계와 일치

\B

\b 와 반대로 일치

특수한 문자

[\b]

역스페이스 

\c

제어문자와 일치

\d

모든 숫자와 일치

\D

\d 와 반대

\f

페이지 넘기기(form feed)

\n

줄바꿈

\r

캐리지 리턴

\s

공백 문자와 일치

\S

\s 와 반대로 일치

\t

\v

수직 탭

\w

영숫자 문자나 밑줄과 일치

\W

\w 와 반대로 일치

\x

16진수 숫자와 일치

\0

8진수 숫자와 일치

역참조와 전후방 탐색

()

하위 표현식 정의

\1

첫 번째 일치한 하위 표현식. 두번째 일치한 하위 표현식은 \2 로 표기하는 방식

?=

전방탐색

?<=

후방탐색

?!

부정형 전방탐색

?<!

부정형 후방탐색

?(backreference)true

조건 지정

?(backreference)true|false

else 표현식 조건 지정

 대소문자 변환

\E 

\L 혹은 \U 변환을 끝냄

\l

다음에 오는 글자를 소문자로 변환

\L

\E 를 만날 때까지 모든 문자를 소문자로 변환

\u

다음에 오는 글자를 대문자로 변환

\U

\E 를 만날 때까지 모든 문자를 대문자로 변환

변경자

(?m) 

다중행 모드