정규표현식 (feat.Python)

졍잉·2025년 3월 27일

[ ] 문자 - 문자 클래스를 말한다.



자주 사용하는 문자 클래스

[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을 제외한 모든 문자


  1. {m}

ca{2}t
이 정규식의 의미는 다음과 같다.

"c + a를 반드시 2번 반복 + t"

  1. {m, n}

ca{2,5}t
이 정규식의 의미는 다음과 같다.

"c + a를 2~5회 반복 + t"

  1. ?

반복은 아니지만 이와 비슷한 기능을 하는 ? 문자가 있다. ? 메타 문자가 의미하는 것은 {0, 1}이다. (참이거나 거짓이거나)

ab?c
이 정규식의 의미는 다음과 같다.

"a + b가 있어도 되고 없어도 됨 + c"

참고 링크 : https://wikidocs.net/4308

profile
군계일학으로 살아남기

0개의 댓글