[python] 정규표현식을 이용한 숫자와 특수문자 검색
정규표현식은 문자열에서 특정 패턴을 찾거나 변형하는 데 사용하는 강력한 도구입니다. 이번 포스트에서는 파이썬의 re
모듈을 이용하여 문자열에서 숫자와 특수문자를 검색하는 방법을 알아보겠습니다.
숫자 검색
숫자를 찾기 위해서는 \d
를 사용합니다. 예를 들어, 다음의 예제 코드는 문자열에서 모든 숫자를 찾아 리스트로 반환하는 함수를 정의합니다.
import re
def find_numbers(text):
pattern = r"\d+"
numbers = re.findall(pattern, text)
return numbers
위의 코드에서는 re.findall()
함수를 사용하여 패턴에 매칭되는 모든 숫자를 찾고, 이를 리스트로 반환합니다. 패턴 \d+
은 하나 이상의 연속된 숫자를 의미합니다.
아래는 이 함수를 사용하여 숫자를 찾는 예제입니다.
text = "Hello, 1234 World!"
numbers = find_numbers(text)
print(numbers) # ['1234']
특수문자 검색
특수문자를 찾기 위해서는 \W
를 사용합니다. \W
는 알파벳, 숫자, 밑줄 문자 외의 모든 문자와 매칭됩니다. 예를 들어, 아래의 예제 코드는 문자열에서 모든 특수문자를 찾아 리스트로 반환하는 함수를 정의합니다.
import re
def find_special_characters(text):
pattern = r"\W+"
special_characters = re.findall(pattern, text)
return special_characters
위의 코드에서는 re.findall()
함수를 사용하여 패턴에 매칭되는 모든 특수문자를 찾고, 이를 리스트로 반환합니다. 패턴 \W+
은 하나 이상의 연속된 특수문자를 의미합니다.
아래는 이 함수를 사용하여 특수문자를 찾는 예제입니다.
text = "Hello, @#^ World!"
special_characters = find_special_characters(text)
print(special_characters) # ['@', '#', '^']
결론
정규표현식은 문자열에서 숫자와 특수문자를 검색하는 데 유용한 도구입니다. 이번 포스트에서는 숫자를 검색하는 방법과 특수문자를 검색하는 방법을 알아보았습니다. re
모듈의 다양한 함수와 패턴을 활용하면 보다 정교한 검색이 가능합니다.
더 자세한 내용은 Python 문서의 정규표현식 HOWTO를 참고하시기 바랍니다.