티스토리 뷰
반응형
정규식(Regular Expression)은 특정규칙을 가진 문자열의 집합을 표현하는데 사용하는 형식 언어이다. 유효성 검사, 문자열 파싱 및 대체, 데이터 변환 그리고 웹 스크래핑까지 다양한 응용분야가 있다.
패턴 | 설명 |
^ | 라인의 처음을 매칭 |
$ | 라인의 끝을 매칭 |
. | 임의의 문자를 매칭 (와일드카드) |
\s | 공백 문자를 매칭 |
\S | 공백이 아닌 문자를 매칭 |
* | 바로 앞선 문자에 적용되고, 0 혹은 그 이상의 앞선 문자와 매칭을 표기함. |
*? | 바로 앞선 문자에 적용되고, 0 혹은 그 이상의 앞선 문자와 매칭을 탐욕적이지 않은 방법으로 표기함. |
+ | 바로 앞선 문자에 적용되고, 1 혹은 그 이상의 앞선 문자와 매칭을 표기함. |
+? | 바로 앞선 문자에 적용되고, 1 혹은 그 이상의 앞선 문자와 매칭을 탐욕적이지 않은 방법으로 표기함. |
[aeiou] | 명세된 집합 문자에 존재하는 단일문자와 매칭, 'a','e','i','o','u' 문자만 매칭되는 예제 |
[a-z0-9] | - 문자로 범위를 명세할 수 있음. 소문자 이거나 숫자인 단일 문자만 매칭되는 예제 |
() | 괄호가 정규표현식에 추가될 때 매칭을 무시함. 하지만 findall() 을 사용할 때 전체 문자열보다 매칭된 문자열의 상세한 부속 문자열을 추출할 수 있게 함. |
텍스트에서 문자 패턴 찾기 ("From:" 이라는 문자 패턴을 가진 문장을 출력)
import re
hand = open('mbox-short.txt')
for line in hand :
line = line.rstrip()
# find() 메소드 사용
if line.find('From:') >= 0 :
print(line)
import re
hand = open('mbox-short.txt')
for line in hand :
line = line.rstrip()
# 정규표현식 사용
if re.search('From:', line) :
print(line)
텍스트에서 시작패턴 찾기 ("From:" 으로 시작하는 문장을 출력)
import re
hand = open('mbox-short.txt')
for line in hand :
line = line.rstrip()
# startswith() 메소드 사용
if line.startswith('From:') :
print(line)
import re
hand = open('mbox-short.txt')
for line in hand :
line = line.rstrip()
# 정규표현식 사용
if re.search('^From:', line) :
print(line)
END
반응형
'IT > Python' 카테고리의 다른 글
[Python] 정규식을 활용하는 다양한 방법 (0) | 2020.11.14 |
---|---|
[Python] 정규식을 이용한 패턴 추출 (1) | 2020.11.10 |
[Python] 튜플을 이용한 딕셔너리 정렬 (0) | 2020.10.13 |
[Python] 딕셔너리를 활용한 데이터 빈도수 측정 (0) | 2020.10.06 |
[Python] 문자열, 파일, 리스트, 가디언패턴 (0) | 2020.10.06 |
댓글
공지사항