Python의 목록에서 문자열 찾기

Manav Narula 2023년1월30일
  1. for루프를 사용하여 Python에서 특정 부분 문자열을 포함하는 목록에서 요소 찾기
  2. filter()함수를 사용하여 특정 하위 문자열을 포함하는 Python 목록에서 요소 찾기
  3. 정규식을 사용하여 특정 하위 문자열을 포함하는 Python 목록에서 요소 찾기
Python의 목록에서 문자열 찾기

이 튜토리얼에서는 특정 하위 문자열이있는 Python 목록에서 요소를 찾는 방법을 소개합니다.

다음 목록으로 작업하고 ack이있는 문자열을 추출합니다.

my_list = ["Jack", "Mack", "Jay", "Mark"]

for루프를 사용하여 Python에서 특정 부분 문자열을 포함하는 목록에서 요소 찾기

이 방법에서는 목록을 반복하고 하위 문자열이 특정 요소에 있는지 여부를 확인합니다. 요소에 하위 문자열이 있으면 문자열에 저장합니다. 다음 코드는 방법을 보여줍니다.

str_match = [s for s in my_list if "ack" in s]
print(str_match)

출력:

['Jack', 'Mack']

in 키워드는이 예에서 주어진 문자열"ack"가 문자열에 있는지 여부를 확인합니다. 또한 문자열 클래스의 매직 메서드 인__contains__ 메서드로 대체 할 수도 있습니다. 예를 들면 :

str_match = [s for s in my_list if s.__contains__("ack")]
print(str_match)

출력:

['Jack', 'Mack']

filter()함수를 사용하여 특정 하위 문자열을 포함하는 Python 목록에서 요소 찾기

filter()함수는 함수의 도움을 받아 주어진 객체에서 데이터의 하위 집합을 검색합니다. 이 메서드는lambda 키워드를 사용하여 데이터 필터링 조건을 정의합니다. lambda 키워드는 Python에서 한 줄짜리lambda 함수를 만듭니다. 다음 코드 조각을 참조하십시오.

str_match = list(filter(lambda x: "ack" in x, my_list))
print(str_match)

출력:

['Jack', 'Mack']

정규식을 사용하여 특정 하위 문자열을 포함하는 Python 목록에서 요소 찾기

정규식은 요소를 검색하기 위해 일치하는 패턴으로 작동 할 수있는 일련의 문자입니다. 정규식을 사용하려면re 모듈을 가져와야합니다. 이 메서드에서는 특정 패턴과 일치하는 요소를 반환하는 데 사용되는for 루프와re.search()메서드를 사용합니다. 다음 코드는 방법을 설명합니다.

import re

pattern = re.compile(r"ack")
str_match = [x for x in my_list if re.search("ack", x)]
print(str_match)

출력:

['Jack', 'Mack']
작가: Manav Narula
Manav Narula avatar Manav Narula avatar

Manav is a IT Professional who has a lot of experience as a core developer in many live projects. He is an avid learner who enjoys learning new things and sharing his findings whenever possible.

LinkedIn

관련 문장 - Python List