[파이썬]정규표현식

이윤성·2022년 3월 29일
0

파이썬에서의 정규표현식

파이썬에서는 re라는 라이브러리를 import 함으로써 정규표현식을 사용할 수 있다.
1. re.compile(문자열)

  • 문자열이 정규표현식만의 표현인 경우 필수적으로 사용되는 메소드다. 문자열을 정규표현식처럼 작동되게 컴파일해준다라고 이해하면 편하다.
import re
p = re.compile("abc.*") # abc가 포함된 모든 문자 매칭
p.findall("abc") # ["abc"]
p.findall("abcde") # ["abcde"]
p.findall("abcdefg") # ["abcdefg"]
  1. re.match(문자열)
  • 문자열의 처음부터 해당 정규식에 맞는 문자열이 있는지 확인한다
# 윗부분 생략
p = re.compile("abc.*")
if p.match("abc"):
	print("true")
else:
	print("false")
# true

if re.match("abc", "ad"): # 이렇게도 사용 가능하다.
	print("true")
else:
	print("false")
# false
  1. re.search(문자열)
  • re.match와 유사하지만, 다른 점이 하나 있다. 바로 문자열 처음부터가 아니라 어디서든 패턴이 일치하는지 파악한다.
# 윗부분 생략
p = re.compile("abc.*")
if p.search("abc"):
	print("true")
else:
	print("false")
# true

if re.search("abc", "dabc"): # 이렇게도 사용 가능하다.
	print("true")
else:
	print("false")
# true -> match와 다른 점
  1. re.finall(문자열)
  • 문자열 중 패턴과 일치하는 모든 부분을 찾아서 리스트로 저장한다.
# 윗부분 생략
p = re.compile("a")
arr =p.findall("ewrsd")
print(arr) []

arr = re.findall("abc", "abcdabcddabc"): # 이렇게도 사용 가능하다.
print(arr) # ["abc", "abc", "abc"]
  • 그 이외에 finditer, fullmatch 등의 메소드가 있다.

정규표현식

0개의 댓글