본문 바로가기
코딩 수업/파이썬

[파이썬] 특정 패턴 가진 문자열 제거 (정규표현식, re, pattern, compile, sub)

by Jade S. 2024. 1. 28.
728x90
반응형

 

예제 : 영화 자막 SRT문서에서 script만 남기기

 

import re

# 예시 문자열
text = """
24
00:01:24,519 --> 00:01:26,470
we avoid a fight.


25
00:01:26,471 --> 00:01:28,406
No one else dies.


26
00:01:31,410 --> 00:01:33,360
Okay.
"""

# 정규표현식 Regular Expression, regex, regexp : 문자열의 패턴을 나타내기 위한 형식 언어

# re.compile()은 정규표현식을 미리 컴파일하여 정규표현식 객체를 반환하는 함수

# re.sub(pattern, replacement, string)

pattern = re.compile(r'\d+\n\d{2}:\d{2}:\d{2},\d{3} --> \d{2}:\d{2}:\d{2},\d{3}')
result = re.sub(pattern, '', text)

# 여러 개의 연속된 빈 줄을 하나의 빈 줄로 대체
result = re.sub(r'\n\s*\n', '\n\n', result)

# 결과 출력
print(result)

 

출력>


we avoid a fight.

No one else dies.

Okay.

728x90
반응형