| 특수 문자 | 설명 |
|---|---|
. | 한개의 임의의 문자를 나타낸다. |
? | 앞의 문자가 존재할 수 도 있고, 존재하지 않을수도 있다.(문자가 0개 또는 1개) |
* | 앞의 문자가 무한개로 존재할 수도 있고, 존재하지 않을수 도 있다. (문자가 0개이상) |
+ | 앞의 문자가 최소한개이상 존재한다.(문자가 1개이상) |
^ | 뒤의 문자열로 문자열이 시작된다 |
$ | 앞의 문자열로 문자열이 끝난다. |
{숫자} | 숫자 만큼 반복 |
{숫자1, 숫자2} | 숫자1 이상 숫자2 이하만큼 반복한다. ?, *,+를 이것으로 대체 가능 |
{숫자,} | 숫자 이상만큼 반복한다. |
[] | 대괄호 안의 문자들 중 한개의 문자와 매치 |
[^문자] | 해당 문자를 제외한 문자를 매치 |
l | AlB 와 같이 쓰이며 A 또는 B의 의미를 갖음 |
| 문자규칙 | 설명 |
|---|---|
\\ | 역 슬래쉬 문자 자체를 의미함 |
\d | 모든 숫자를 의미함 [0-9] 와 동일 |
\D | 숫자를 제외한 모든 문자를 의미한다 [^0-9] 와 동일 |
\s | 공백을 의미함 [\t\n\r\f\v] 와 동일 |
\S | 공백을 제외한 문자를 의미 [^\t\n\r\f\v]와 동일 |
\w | 문자 또는 숫자를 의미함 [a-zA-Z0-9] 와 동일 |
\W | 문자 또는 숫자가 아닌 문자를 의미함 [^a-zA-Z0-9]와 동일 |
| 모듈 함수 | 설명 |
|---|---|
re.compile() | 정규표현식을 컴파일 하는 함수, 파이썬에 미리 컴파일을 해놓고 사용하여 속도 측면에서 유리함 |
re.search() | 문자열 전체에 대해 정규표현식과 매치되는지 검색한다. |
re.match() | 문자열의 처음이 정규표현식과 매치되는지 검색 |
re.split() | 정규 표현식을 기준으로 문자열을 분리하여 리스트로 리턴 |
re.findall() | 문자열에 정규 표현식과 매치되는 모든 경우의 문자열을 찾아서 리스트로 리턴 만약 리턴되는 값이 없을 경우 빈 리스트로 리턴 |
re.finditer() | 문자열에서 정규 표현식과 매치되는 모든 경우의 문자열에 대한 이터레이터 객체를 리턴 ex) a= re.finditer() —> next(iter(a)) |
re.sub() | 문자열에서 정규 표현식과 일치하는 부분에 대해서 다른 문자열로 대체 |
r 은 raw string 의 의미를 가지며 역슬래쉬 \ 을 탈출 문자로 보지 않고, 아무 역할도 하지 않는 평범한 문자열로 간주한다. \s 는 탈출문자에 해당하지 않기 때문에 추가적인 pattern에 넣어줘야함예시 )
print("Hello World!\n")
print(r"Hello World!\n")
>> Hello World!
>>
>> Hello World!\n
연습용 사이트(정규식표현) —> https://regexr.com/5mhou
-필수 패키지 설치
pip install nltk konlpy pandas numpy matplotlib seaborn scikit-learn torch
pip install JPype1-0.6.3-cp36-cp36m-win_amd64.whl # 설치 주소 https://github.com/jpype-project/jpype/releases * 디렉토리에 파일이 있어야 설치 가능