[python] 정규표현식을 이용한 특정 문자열 제외 검색
정규표현식은 파이썬에서 문자열을 검색하고 조작하는 강력한 도구입니다. 특정 문자열을 제외하고 원하는 문자열을 검색하는 방법에 대해 알아보겠습니다.
정규표현식 제외 검색
정규표현식에서 특정 문자열을 제외하려면 (?!pattern)
을 사용합니다. 이는 검색하고자 하는 패턴을 나타내는 pattern
앞에 사용됩니다.
예를 들어, 문자열에서 ‘apple’을 제외하고 ‘banana’이 포함된 문자열을 검색하고 싶다면 다음과 같이 정규표현식을 작성할 수 있습니다.
import re
text = "I like apples, but I prefer bananas."
pattern = r"(?!apple).*(banana)"
result = re.findall(pattern, text)
print(result)
위 코드의 결과는 [' I prefer bananas.']
입니다. ‘apple’이 포함되면서 ‘banana’도 포함된 문자열을 검색하였습니다.
주의사항
정규표현식을 사용할 때 주의해야 할 몇 가지 사항이 있습니다.
- 제외 검색의 경우, 검색하고자 하는 패턴을 나타내는
pattern
앞에(?!pattern)
을 사용해야 합니다. - 정규표현식 패턴을 작성할 때는 해당 언어의 문법을 따라야 합니다.
- 정규표현식은 성능이 중요한 경우에는 사용을 피해야 합니다.
마무리
위 예제를 통해 정규표현식을 이용하여 특정 문자열을 제외하고 검색하는 방법을 알아보았습니다. 정규표현식은 문자열 처리에 유용한 도구이므로 적절히 활용하면 효과적인 검색과 조작을 할 수 있습니다.
더 자세한 정규표현식 사용법은 Python 정규표현식 공식 문서를 참고하시기 바랍니다.