[python] 정규표현식을 이용한 문단 추출

정규표현식(Regular Expression)은 문자열에 포함된 패턴을 표현하고 검색하는 데 사용할 수 있는 강력한 도구입니다. 이번 포스트에서는 Python에서 정규표현식을 사용하여 텍스트에서 원하는 문단을 추출하는 방법에 대해 알아보겠습니다.

1. re 모듈 import 하기

Python에서 정규표현식을 사용하기 위해서는 re 모듈을 import 해야 합니다. 다음과 같이 코드를 작성하여 re 모듈을 import 할 수 있습니다.

import re

2. 텍스트에서 문단 추출하기

문단은 일반적으로 여러 줄로 구성되어 있으므로, 다음의 예시 텍스트를 사용하여 문단을 추출하는 방법을 알아보겠습니다.

text = '''
Lorem ipsum dolor sit amet, consectetur adipiscing elit.
Nullam finibus laoreet mauris, id egestas ante bibendum nec.
Donec posuere mi vitae mi consectetur, vitae molestie metus tincidunt.
Sed nec efficitur eros. Curabitur et mauris in risus ultricies pulvinar.
'''

pattern = r'(?sm)(.+?)(?:\n\s*\n|$)'
paragraphs = re.findall(pattern, text)

위의 코드에서는 정규표현식 패턴인 (?sm)(.+?)(?:\n\s*\n|$)을 사용하여 텍스트에서 문단을 추출합니다. 이 정규표현식은 다음과 같은 구조를 가지고 있습니다.

실행결과를 확인하기 위해 print(paragraphs)를 추가해보세요. 추출된 각 문단은 리스트에 저장되어 출력될 것입니다.

3. 결과 확인하기

추출된 문단을 확인하기 위해 다음과 같은 코드를 작성하여 문단을 출력할 수 있습니다.

for paragraph in paragraphs:
    print(paragraph)

마무리

이렇게 Python의 정규표현식을 이용하여 텍스트에서 문단을 추출하는 방법에 대해 알아보았습니다. 정규표현식은 문자열 처리에 있어서 강력한 도구로 사용될 수 있으므로, 필요한 경우에 적절히 활용해보세요.

참고 자료