[TIL] 정규표현식
정규표현식 (re)
정규표현식은 복잡한 문자열을 처리할 때 사용한다.
메타 문자
search, match
import re
fruit_list = ["melon", "watermelon", "banana", "apple", "peach"]
for fruit in fruit_list:
if re.search('mel.n', fruit) :
print (fruit) # melon, watermelon
search 함수는 문자열에서 조건과 일치하는 패턴이 존재하는지 찾는 함수이다. search 함수와 비슷한 함수 중 match 함수가 있는데 match 함수와의 차이점은 match 함수는 문자열의 시작부터 패턴이 동일해야한다는 조건이 있지만, search 함수는 문자열의 중간이라도 패턴과 일치하는 부분이 있는가를 살펴본다는 것이다. 만약 위의 코드에서 re.search
가 아닌 re.match
를 썼다면 결과는 melon밖에 나오지 않는다.
findall
re.findall('a', 'grandma likes acacia')
# ['a', 'a', 'a', 'a', 'a']
findall 함수는 문자열 중 패턴과 일치하는 모든 부분을 찾아서 리턴해준다. search 함수의 예제를 조금 변형시켜보면 다음과 같이 사용할 수 있다.
fruit_list = ["melon", "watermelon", "banana", "apple", "peach", "cherry", "pineapple"]
for fruit in fruit_list:
if re.findall('ch', fruit):
ch_list.append(fruit)
if re.findall('ea', fruit):
ea_list.append(fruit)
print(f'ch list : {ch_list}') # ['peach', 'cherry']
print(f'ea list : {ea_list}') # ['peach', 'pineapple']
Author And Source
이 문제에 관하여([TIL] 정규표현식), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://velog.io/@woooa/TIL-정규표현식과-파이썬-메소드들저자 귀속: 원작자 정보가 원작자 URL에 포함되어 있으며 저작권은 원작자 소유입니다.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)