파이썬에서는 re 모듈의 findall() 함수를 사용하면 주어진 문자열에서 소문자 모음(a, e, i, o, u)을 간단하게 찾아낼 수 있습니다. 정규 표현식 패턴에서 대괄호 [ ]로 묶인 부분은 '문자 클래스'라고 하며, 이 안에 나열된 문자 중 하나라도 일치하면 해당 문자가 결과에 포함됩니다.
예제 코드
import re foo = 'AefuToiJnmna' match = re.findall(r'[aeiou]', foo) print(match)
실행 결과
위 코드를 실행하면 문자열에 포함된 소문자 모음들이 순서대로 리스트 형태로 출력됩니다.
['e', 'u', 'o', 'i', 'a']
코드 설명
r'[aeiou]': 소문자 모음 다섯 개 중 하나와 일치하는 문자 클래스입니다. 패턴 앞의r는 raw string을 의미하며, 정규식 작성 시 권장되는 방식입니다.re.findall(): 문자열에서 패턴과 일치하는 모든 부분을 찾아 리스트로 반환합니다.- 대문자 'A', 'T', 'J' 등은 패턴에 소문자만 지정했기 때문에 매칭에서 제외됩니다.
참고로 문자 클래스 안에는 콤마 없이 [aeiou]처럼 붙여 쓰는 것이 일반적이며, 동일하게 동작합니다. 만약 대소문자 구분 없이 모든 모음을 찾고 싶다면 [aeiouAEIOU] 또는 re.IGNORECASE 옵션을 활용할 수 있습니다.