我有srt格式的字幕,我有功能
def clearSubtitles(subtitles):
for i in subtitles:
if re.search("^\r$", i) != None :
subtitles.remove(i)
if re.search("^\d+\r$", i) != None:
subtitles.remove(i) 在列表中,我有subtitles['0\r','00:59:58,084 --> 00:59:58,888\r','Come on!\r']
我需要匹配大小写0\r中的第一个短语,但是^\d+\r$匹配me timewindows(00:59:58,084 --> 00:59:58,888\r) ..有人能帮帮我吗?
发布于 2013-05-11 04:19:58
好了,我想我现在明白你想要删除什么了。试试这个:
import re
cleared_subtitles = [subtitle for subtitle in subtitles if not re.match(r'\d*\r')]这将生成一个新列表,其中包含所有以0或更多数字开头、\r以删除结尾的元素。与re.search不同,re.match要求regexp匹配整个字符串。
发布于 2013-05-11 03:42:41
所以你需要用一个数字来匹配行?
re.search(r"^\d\r", i)https://stackoverflow.com/questions/16489689
复制相似问题