[파이썬] 문자열 검색과 패턴 매칭

문자열 검색과 패턴 매칭은 많은 프로그래밍 작업에서 중요한 역할을 합니다. Python은 이러한 작업을 수행하기 위한 다양한 내장 함수와 모듈을 제공합니다. 이 블로그 포스트에서는 Python을 사용하여 문자열을 검색하고 패턴을 매칭하는 방법을 살펴보겠습니다.

문자열 검색

Python에서 문자열을 검색하는 가장 간단한 방법은 in 연산자를 사용하는 것입니다. in 연산자는 문자열이 다른 문자열 안에 존재하는지 여부를 확인합니다. 예를 들어:

text = "Hello, world!"
if "world" in text:
    print("문자열이 존재합니다.")
else:
    print("문자열이 존재하지 않습니다.")

이 코드는 “Hello, world!”라는 문자열 안에 “world”라는 문자열이 존재하는지 확인하고 결과를 출력합니다.

정규 표현식

정규 표현식은 문자열의 패턴을 정의하고 매칭시키는 강력한 도구입니다. Python의 re 모듈을 사용하면 정규 표현식을 사용할 수 있습니다. 예를 들어:

import re

text = "The quick brown fox jumps over the lazy dog."
pattern = r"\b\w{5}\b"
matches = re.findall(pattern, text)
print(matches)

위의 코드는 주어진 텍스트에서 5개의 문자로 이루어진 단어를 찾아 출력합니다. 여기서 r"\b\w{5}\b"은 5개의 알파벳 문자로 이루어진 단어를 매칭시키는 정규 표현식입니다.

문자열 치환

패턴 매칭은 문자열 치환 작업에도 유용하게 사용될 수 있습니다. Python의 re 모듈을 사용하면 패턴을 검색하고 해당 패턴을 다른 문자열로 치환할 수 있습니다. 예를 들어:

import re

text = "Hello, my name is John. Hello to all Johns!"
pattern = r"John"
replacement = "Emma"
new_text = re.sub(pattern, replacement, text)
print(new_text)

위의 코드는 text 문자열에서 “John” 패턴을 찾아 “Emma”로 치환한 후 결과를 출력합니다.

결론

Python은 문자열 검색과 패턴 매칭을 위한 강력한 도구를 제공합니다. in 연산자를 사용하여 간단한 문자열 검색을 수행하거나 re 모듈을 사용하여 정교한 정규 표현식을 이용한 패턴 매칭과 치환 작업을 수행할 수 있습니다. 이러한 기능을 잘 활용하여 다양한 프로그래밍 작업을 더욱 효율적으로 처리할 수 있습니다.

참고문서: Python 정규표현식 문서