0. 메타 문자(meta characters)
- 메타 문자 : 원래 그 문자가 가진 뜻이 아닌 특별한 용도로 사용되는 문자
1. 문자 클래스 [ ]
-
[abc] : [] 안에 들어있는 문자 중 하나의 문자와 매치
-
[a-c] : [abc]와 동일
-
[a-zA-Z] : 알파벳 모두
-
[0-9] : 숫자
^
: 문장의 시작
$
: 문장의 끝
\b
: boundary(경계)
\d
: 숫자와 매치, [0-9]와 동일한 표현식
\D
: 숫자가 아닌 모든 것과 매치
\s
: 공백과 매치
\S
: 공백이 아닌 모든 것과 매치
\w
: 문자+숫자와 매치
\w
: 문자+숫자가 아닌 모든것의 매치
2. Dot(.)
.
은 \n
줄바꿈 문자를 제외한 모든 문자와 매치됨
- a.b = a + 모든문자 + b
- aab (매치)
- a0b (매치)
- abc (a와 b 사이 뭐라도 와야하는데 없어서 매치X)
- a[.]b = a + . + b
- a.b (매치)
- aab (매치X)
3. 반복(* / + / ({m,n} / ?)
*
은 바로 앞의 문자가 0번에서 무한대 로 반복가능함을 의미+
는 바로 앞의 문자가 최소 1번 이상 반복될 때 사용{m,n}
정규식을 사용하면 횟수를 정할 수 있다- {1,} : + 와 동일
- {0,} : *와 동일
?
은{0,1}
의 의미로 있어도 되고 없어도 되는 것을 의미한다