파이썬은 문자열에서 모든 항목 찾기
-
string.count()
함수를 사용하여 Python의 문자열에서 하위 문자열의 모든 항목 찾기 -
List Comprehension 및
startswith()
를 사용하여 Python의 문자열에서 하위 문자열의 모든 항목 찾기 -
re.finditer()
를 사용하여 Python의 문자열에서 하위 문자열의 모든 항목 찾기
Python의 하위 문자열은 다른 문자열 내에서 발생하는 문자 클러스터입니다. 부분 문자열을 다루는 것은 종종 번거로울 수 있습니다. 이러한 문제 중 하나는 특정 문자열 내에서 하위 문자열의 모든 발생을 찾는 것입니다.
이 튜토리얼은 Python의 문자열 내에서 모든 부분 문자열을 찾는 다양한 방법에 대해 설명합니다.
string.count()
함수를 사용하여 Python의 문자열에서 하위 문자열의 모든 항목 찾기
string.count()
는 주어진 특정 문자열에서 하위 문자열의 발생 수 또는 수량을 반환하는 Python의 내장 함수입니다. 또한 시작 및 종료 위치의 인덱스를 지정하는 추가 매개 변수start
및end
가 있습니다.
count()
메소드는 문자열을 탐색하고 문자열에서 특정 하위 문자열이 발생한 횟수를 리턴합니다.
다음 코드는string.count()
함수를 사용하여 문자열에서 모든 하위 문자열을 찾습니다.
# defining string and substring
str1 = "This dress looks good; you have good taste in clothes."
substr = "good"
# occurrence of word 'good' in whole string
count1 = str1.count(substr)
print(count1)
# occurrence of word 'good' from index 0 to 25
count2 = str1.count(substr, 0, 25)
print(count2)
출력:
2
1
쉬운 방법이며 모든 경우에 작동합니다. 이 메서드의 유일한 단점은 문자열에서 하위 문자열이 발생하는 다른 인덱스를 반환하지 않는다는 것입니다.
List Comprehension 및startswith()
를 사용하여 Python의 문자열에서 하위 문자열의 모든 항목 찾기
이 메소드에는 목록 이해력과startswith()
메소드가 필요합니다.
startswith()
함수는 하위 문자열의 시작 인덱스를 가져 오는 작업을 수행하고 목록 이해를 사용하여 전체 대상 문자열을 반복합니다.
다음 코드는 목록 이해력과startswith()
를 사용하여 문자열에서 모든 하위 문자열을 찾습니다.
# defining string
str1 = "This dress looks good; you have good taste in clothes."
# defining substring
substr = "good"
# printing original string
print("The original string is : " + str1)
# printing substring
print("The substring to find : " + substr)
# using list comprehension + startswith()
# All occurrences of substring in string
res = [i for i in range(len(str1)) if str1.startswith(substr, i)]
# printing result
print("The start indices of the substrings are : " + str(res))
출력:
The original string is : This dress looks good; you have good taste in clothes.
The substring to find : good
The start indices of the substrings are : [17, 34]
re.finditer()
를 사용하여 Python의 문자열에서 하위 문자열의 모든 항목 찾기
re.finditer()
는 프로그래머가 코드에서 사용할 수 있도록 Python이 제공하는 정규식 라이브러리의 함수입니다. 문자열에서 특정 패턴의 발생을 찾는 작업을 수행하는 데 도움이됩니다. 이 함수를 사용하려면 먼저 정규식 라이브러리 re
를 가져와야합니다.
re.finditer()
는 구문에서pattern
및string
매개 변수를 사용합니다. 이 경우 패턴은 하위 문자열을 참조합니다.
다음 코드는re.finditer()
함수를 사용하여 문자열에서 모든 하위 문자열 항목을 찾습니다.
import re
# defining string
str1 = "This dress looks good; you have good taste in clothes."
# defining substring
substr = "good"
print("The original string is: " + str1)
print("The substring to find: " + substr)
result = [_.start() for _ in re.finditer(substr, str1)]
print("The start indices of the substrings are : " + str(result))
출력:
The original string is: This dress looks good; you have good taste in clothes.
The substring to find: good
The start indices of the substrings are : [17, 34]
Vaibhhav is an IT professional who has a strong-hold in Python programming and various projects under his belt. He has an eagerness to discover new things and is a quick learner.
LinkedIn