
[ ] 문자 - 문자 클래스를 말한다.
[0-9] 또는 [a-zA-Z] 등은 무척 자주 사용하는 정규 표현식이다. 이렇게 자주 사용하는 정규식은 별도의 표기법으로 표현할 수 있다.
\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_]와 동일한 표현식이다.
대문자로 사용된 것은 소문자의 반대임을 추측할 수 있다.
.(dot) 문자 - \n을 제외한 모든 문자
- {m}
ca{2}t
이 정규식의 의미는 다음과 같다.
"c + a를 반드시 2번 반복 + t"
- {m, n}
ca{2,5}t
이 정규식의 의미는 다음과 같다.
"c + a를 2~5회 반복 + t"
- ?
반복은 아니지만 이와 비슷한 기능을 하는 ? 문자가 있다. ? 메타 문자가 의미하는 것은 {0, 1}이다. (참이거나 거짓이거나)
ab?c
이 정규식의 의미는 다음과 같다.
"a + b가 있어도 되고 없어도 됨 + c"
참고 링크 : https://wikidocs.net/4308