Python 정규표현식

hayeon!·2021년 3월 3일
0

정규표현식

목록 보기
1/1

📌선언 방식

import re 
p = re.compile('ab*')

re 모듈을 사용하고 정규표현식을 compile하여 사용 한다.

📌📌 주 사용 메서드

파이썬 공식 홈페이지에서 중요하다고 언급한 네 가지 메서드는 아래와 같다.

match() : 문자열의 시작부터 정규표현식과 일치하는지 판단한다. 
search(): 처음부터 훑으면서 정규표현식과 일치하는 위치를 찾는다. 
findall(): 정규표현식과 일치하는 모든 문자열을 찾아 리스트로 반환한다. 
finditer(): 정규표현식과 일치하는 모든 문자열을 찾아 iterator로 반환한다. 

📎메서드 사용법

앞서 선언한 p와 함께 p.match('abc'), p.search('search abcd'), p.findall('abcc bcaaa acba abcd'), p.finditer('abcc bcaaa acba abcd') 처럼 사용한다.

📎match() 메서드

match()는 해당 문자열과 일치하지 않는 경우 None을 반환하고 일치하는 경우 Object를 반환한다. 이 Object의 속성을 가져올 수 있는 메소드는 다음과 같다.

group(): 일치하는 문자열을 반환한다. 
start(): 일치하는 문자열의 시작 위치를 반환한다. 
end(): 일치하는 문자열의 끝 위치를 반환한다.
span(): 일치하는 문자열의 시작과 끝 위치를 튜플 형태로 반환한다. 

📎search() 메서드

search()는 일치하는 문자열이 없는 경우 match()와 마찬가지로 None을 반환하고 있는 경우 Object를 반환한다. match()와 다른 점은 정규표현식이 문자 처음부터 일치 해야하지만 search()는 입력받은 문자열의 일부분만 정규표현식과 일치하면 된다는 점이다.

📎findall() 메서드

앞의 메서드들과 달리 findall()은 일치하는 문자열들을 배열로 리턴한다.

📎finditer()메서드

반복 가능한 객체(iterator object)를 리턴한다. 반복 가능한 객체는 각각 match()메서드가 리턴하는 Object객체와 같다.

profile
기억하려고 만든 블로그

0개의 댓글