파이썬 기초문법

[Python] 정규식을 활용하여 알파벳과 숫자가 섞인 단어 제거

Family in August 2023. 8. 11. 09:49
반응형

숫자와 알파벳이 여러 번 섞인 단어를 구분하기 위해서는 조금 더 복잡한 정규표현식이 필요합니다. 다음은 숫자와 알파벳이 여러 번 섞인 경우를 구분하여 제거하는 예시 코드입니다:

import re

text = "단어1 단어2 ab12e45 영어문장 XYZ123 A123B456C"

# 숫자와 알파벳이 여러 번 섞인 패턴을 정규표현식으로 설정
mixed_pattern = '[a-zA-Z]+\d+[a-zA-Z\d]+|[a-zA-Z]+\d+|\d+[a-zA-Z]+'

# 정규표현식 패턴과 일치하는 부분을 빈 문자열로 치환하여 숫자와 알파벳이 여러 번 섞인 부분 제거
cleaned_text = re.sub(mixed_pattern, '', text)

print(cleaned_text)


위 코드에서 정규표현식 패턴 \b(?:[a-zA-Z]+\d+|\d+[a-zA-Z]+|[a-zA-Z]+\d+[a-zA-Z\d]+)\b은 숫자와 알파벳이 여러 번 섞인 패턴을 찾습니다. 이 패턴과 일치하는 부분을 re.sub 함수를 사용하여 빈 문자열로 치환함으로써 숫자와 알파벳이 여러 번 섞인 부분을 제거합니다.

출력 결과는 다음과 같을 것입니다:

단어1 단어2 영어문장 XYZ123


위의 예시에서는 "ab12e45", "XYZ123", "A123B456C"이 모두 제거되어 "단어1 단어2 영어문장"만 남게 되었습니다. 이제 숫자와 알파벳이 여러 번 섞인 단어도 구분하여 제거할 수 있습니다.

반응형