Computer >> 컴퓨터 >  >> 프로그래밍 >> Python

파이썬 정규 표현식으로 마침표 또는 줄바꿈을 기준으로 문자열 나누는 방법

문자열을 마침표(.)와 줄바꿈( )을 기준으로 나눠야 할 때, 파이썬의 re 모듈과 정규 표현식을 활용하면 간단하게 처리할 수 있습니다.

정규 표현식 패턴 설명

핵심 패턴은 r'[^\s\.][^\.\n]+'입니다.
- [^\s\.] : 공백 문자와 마침표를 제외한 첫 번째 문자를 매칭합니다.
- [^\.\n]+ : 마침표나 줄바꿈 문자가 나올 때까지의 나머지 문자들을 하나 이상 연속해서 매칭합니다.

이렇게 하면 문장 단위로 깔끔하게 분리된 결과를 얻을 수 있습니다.

예제 코드

import re

s = """Hi. It's nice meeting you.
My name is Jason."""

result = re.findall(r'[^\s\.][^\.\n]+', s)
print(result)

실행 결과

위 코드를 실행하면 다음과 같은 출력을 확인할 수 있습니다.

['Hi', "It's nice meeting you", 'My name is Jason']

참고: split() 메서드를 사용하는 방법

re.findall() 대신 re.split()을 사용해도 같은 목적을 달성할 수 있습니다.

import re

s = """Hi. It's nice meeting you.
My name is Jason."""

result = [x.strip() for x in re.split(r'[\.\n]', s) if x.strip()]
print(result)

이 방식은 구분자(마침표, 줄바꿈)를 기준으로 문자열을 자른 뒤, 빈 문자열과 앞뒤 공백을 제거하여 동일한 결과를 만듭니다.

마무리

정규 표현식을 사용하면 마침표와 줄바꿈 같은 여러 구분자를 한 번에 처리할 수 있어, 텍스트 전처리나 문장 분리 작업에서 매우 유용합니다. 상황에 따라 findall()split() 중 편리한 방법을 선택하면 됩니다.