Regular Expression
정규표현식이란?
특정 문자열이 주어진 표현식과 매치가 되는지 확인해 줍니다.
특정 텍스트에서 검색할 문자열 혹은 패턴을 나타내는 기호 및 문자 입니다.
정규 표현식을 사용하면, 정규 표현식에 쓰여진 문자나 패턴이 검색할 문자열 안에 있는지 없는지 확인 할수 있습니다.
re 내장 모듈
정규 표현식을 사용하기 위해서는, re 라는 내장 모듈을 불러와주고, 사용해주면 됩니다.
1 | import re |
re 모듈의 함수들을 정리하면 아래와 같습니다.
함수 | 동작 함수동작 |
---|---|
re.findall | 지정된 문자열과 매칭되는 부분을 리스트로 반환합니다 |
re.search | 문자열 안에 매치가 있으면, 메치 객체를 반환합니다 |
re.split | 각 매치에서 일치할때마다 분열된 문자열 리스트를 반환합니다 |
re.sub | 문자열과 매치되는 하나 혹은 여러개의 것들을 교체 합니다 |
정규 표현식은 아무리 여러번 봐도, 쉽게 머리에 들어오지 않고. 매번 까먹기만 하기 때문에.
특별히 더더더욱이 많은 공부를 해야하는것 같습니다. W3School 예시를 따라하면서 정리합니다.
Metacharacters (특수문자)
문자 | 비고 | 예시 |
---|---|---|
[] | 문자의 집합 | “[a-m]” |
\ | 특정 순서를 표시 | “\d” |
. | 새줄의 문자를 제외한, 아무 문자 | ‘he..o” |
^ | 으로 시작 | “^hello” |
$ | 으로 끝 | “world$” |
* | 0번 혹은 그 이상 발생 | “aix*” |
+ | 1번 혹은 그 이상 발생 | “aix+” |
{} | 지정된 숫자만큼 발생 | “al{2}” |
| | 양쪽 혹은 | “falls|stays” |
정규표현식은 매우 중요한 토픽으로, 다음 포스팅부터 예시를 좀 찾아보면서 정리해 보려 합니다.