. ^ $ * + ? { } [ ] \ | ( )
문자 클래스로 만들어진 정규식은 '['dhk ']'사이의 문자들과 매치
정규 표현식이 [abc]라면 이 표현식의 의미는 ‘a, b, c 중 한 개의 문자와 매치’를 뜻한다.
문자 클래스 안에 ^ 메타 문자를 사용할 경우에는 반대(not)라는 의미
\d - 숫자와 매치된다. [0-9]와 동일한 표현식이다.
\D - 숫자가 아닌 것과 매치된다. [^0-9]와 동일한 표현식이다.
\s - 화이트스페이스(whitespace) 문자와 매치된다. [ \t\n\r\f\v]와 동일한 표현식이다. 맨 앞의 빈칸은 공백 문자(space)를 의미한다.
\S - 화이트스페이스 문자가 아닌 것과 매치된다. [^ \t\n\r\f\v]와 동일한 표현식이다.
\w - 문자+숫자(alphanumeric)와 매치된다. [a-zA-Z0-9_]와 동일한 표현식이다.
\W - 문자+숫자(alphanumeric)가 아닌 문자와 매치된다. [^a-zA-Z0-9_]와 동일한 표현식이다.
a.b
a[.]b
{ } 반복 횟수 고정:
{1,}은 +, {0,}은 *와 동일하다.
ca{2}t
# "c + a를_반드시_2번_반복 + t"
ab?c
# "a + b가_있어도_되고_없어도_됨 + c"
^x
x$