[파이썬] 문자열의 문자열 카운트 세기

문자열을 다룰 때 종종 특정 문자열이 다른 문자열에서 얼마나 자주 등장하는지 알아야 할 때가 있습니다. 이러한 경우에는 Python의 기본적인 문자열 연산과 메소드를 사용하여 문자열의 문자열 카운트를 세는 것이 유용합니다.

다음은 Python에서 문자열의 문자열 카운트를 세는 몇 가지 방법의 예제입니다.

1. count() 메소드 사용하기

str = "Python is a powerful programming language. Python is widely used."

# "Python"이라는 단어의 개수를 세기
count = str.count("Python")

print(count)  # Output: 2

위의 예제에서는 count() 메소드를 사용하여 문자열 str에서 “Python”이라는 단어의 개수를 세고 출력합니다.

2. Counter 클래스 사용하기

from collections import Counter

str = "Python is a powerful programming language. Python is widely used."

# 문자열에서 단어들의 개수를 세기
word_counts = Counter(str.split())

print(word_counts)  # Output: Counter({'Python': 2, 'is': 2, 'a': 1, 'powerful': 1, 'programming': 1, 'language.': 1, 'widely': 1, 'used.': 1})

위의 예제에서는 Counter 클래스를 사용하여 문자열 str을 단어로 분리하고 각 단어의 개수를 세고 출력합니다.

3. 정규식 사용하기

import re

str = "Python is a powerful programming language. Python is widely used."

# "Python"이라는 단어의 개수를 정규식을 사용하여 세기
count = len(re.findall("Python", str))

print(count)  # Output: 2

위의 예제에서는 정규식을 사용하여 문자열 str에서 “Python”이라는 단어의 개수를 세고 출력합니다. re.findall() 함수는 정규식에 매치되는 모든 부분을 찾아 리스트로 반환하므로, 리스트의 길이를 구해서 개수를 얻을 수 있습니다.

이처럼 Python에서 문자열의 문자열 카운트를 세기 위해서는 간단한 문자열 메소드인 count()를 사용하거나, 더 복잡한 연산을 위해 Counter 클래스나 정규식을 사용할 수 있습니다. 이러한 방법들을 활용하면 문자열에서 특정 문자열의 개수를 손쉽게 세어낼 수 있습니다.