Python

Python – 표준 모듈 (re편)

re 모듈 메서드

종류 기능 결과
compile 문자열 정규식을 컴파일 re.Pattern
match 첫 문자열부터 비교 후 일치하는 부분 반환 match object 1개
search 전체 문자열에서 일치하는 문자열 중 가장 앞 부분의 문자열 반환 match object 1개
findall 전체 문자열에서 일치하는 모든 문자열 리스트로 반환 문자열 리스트
finditer 전체 문자열에서 일치하는 모든 문자열 iterator로 반환 iterator object 1개
fullmatch 대상 문자열과 완전 일치한 경우 반환 match object 1개
  • 테스트 원문 (st 변수값)
    • 출처 – 통일불교성전 [무소의 뿔]
모든 중생에 대하여 폭력을 쓰지 말고, 모든 중생의 어느 하나도 괴롭히지 말며, 
또 자녀를 두려고 원하지도 말고, 친구를 두기를 원하지 말라. 무소의 뿔처럼 오직 혼자서 걸어가라.
서로 사귄 사람에게는 사랑과 그리움이 생기고, 사랑과 그리움으로 인하여 괴로움이 생긴다. 
사랑과 그리움에서 우환이 생기는 것을 알고, 무소의 뿔처럼 오직 혼자서 걸어가라.
  • compile 사용 예시
comp = re.compile("무소의 뿔")
  • match 사용 예시
result = re.match(comp, st)
# None

if result:
    print("YES")
else:
    print("NO")
  • search 사용 예시
result = re.search(comp, st)
# <re.Match object; span=(81, 86), match='무소의 뿔'>
  • findall 사용 예시
result = re.findall(comp, st)
# ['무소의 뿔', '무소의 뿔']
  • finditer 사용 예시
result = re.finditer(comp, st)
# <callable_iterator object at 0x0000022901524430>

for data in result: print(data)
# <re.Match object; span=(81, 86), match='무소의 뿔'>
# <re.Match object; span=(178, 183), match='무소의 뿔'>
  • full match 사용 예시
result = re.fullmatch(comp, st)
# None

match 객체의 메서드

종류 기능
group 매칭된 문자열을 반환
start 매칭된 문자열의 시작위치 반환
end 매칭된 문자열의 끝 위치 반환
span 매칭된 문자열의 시작위치과 끝 위치 튜플 형태로 반환
  • match 객체 메서드 사용 예시
result = re.search(comp, st)

# group
result.group()
# 무소의 뿔

result.start()
# 81

result.end()
# 86

result.span()
# (81, 86)

답글 남기기

이메일 주소는 공개되지 않습니다. 필수 항목은 *(으)로 표시합니다

이 사이트는 스팸을 줄이는 아키스밋을 사용합니다. 댓글이 어떻게 처리되는지 알아보십시오.