Computer >> 컴퓨터 >  >> 프로그램 작성 >> Python

Python 정규식에서 re.search() 및 re.findall() 메서드의 차이점은 무엇입니까?


re.search() 메서드는 re.match()와 유사하지만 문자열 시작 부분에서만 일치 항목을 찾는 것으로 제한하지 않습니다.

예시

import re
result = re.search(r'Tutorials', 'TP Tutorials Point TP')
print result.group()

출력

Tutorials

여기에서 search() 메서드가 문자열의 모든 위치에서 패턴을 찾을 수 있음을 알 수 있습니다.

re.findall()은 일치하는 모든 패턴의 목록을 가져오는 데 도움이 됩니다. 주어진 문자열의 시작 또는 끝에서 검색합니다. findall 메소드를 사용하여 주어진 문자열에서 패턴을 검색하면 패턴의 모든 항목을 반환합니다. 패턴을 검색할 때 항상 re.findall()을 사용하는 것이 좋습니다. re.search() 및 re.match() 둘 다처럼 작동합니다.

예시

import re
result = re.search(r'TP', 'TP Tutorials Point TP')
print result.group()

출력

TP