정규표현식이란?
- 문자열의 특정 패턴을 찾아내는 문자열의 조합이다.
- 단순 검색이 아닌 복잡한 조건의 패턴을 찾아내는 기술.
- A regular expression is a sequence of characters that specifies a search pattern.
왜 사용하는지?
- 복잡한 문자열 속에서 원하는 조건에 맞는 문자열을 찾아내기 위해 사용한다.
어떻게 사용하는지?
- expression과 flag를 활용해 조건에 맞는 문자열을 검색한다.
g (global) : 존재하는 모든 검색내용 찾기 (하나 찾은 뒤 그만두지 않고)
i (case insensitive) : 대소문자 구분하지 않고 모두 찾기
s (single line=dotall) : 특수문자 . \n 기호까지 포함하여 매칭하게 하는 옵션
m (multy line) : 쓰인 문장을 한 문장이 아닌 여러 문장으로 구분해서 처리하는 옵션 (multy line 사용하지 않을 시 전체를 한 문장으로 봄)
|
또는
()
Group
[]
문자셋, 괄호 안의 어떤 문자든 : [a-zA-z0-9-]
[^]
부정 문자셋, 괄호안의 내용 제외
(?:)
찾지만 그룹으로 기억하지 않음
?
zero or one (없거나 하나 있거나)
*
zero or more (없거나 있거나 많거나)
+
one or more (하나 또는 많이)
{n}
n번 반복
{min,}
최소
{min, max}
최소, 그리고 최대
\b
단어 경계
\B
단어 경계가 아님
^
문장의 시작
$
문장의 끝
\
특수문자가 아닌 문자
.
어떤 한 글자(개행문자\n 제외하고)
\d
digit 숫자
\D
digit 숫자 아님
\w
word 문자
\W
word 문자 아님
\s
space 공백
\S
space 공백 아님