我正在为两个半男人下载字幕。然后我有两集两个字幕。其中一个使用VLC媒体播放器,一个不工作。要查看错误,我使用Gedit打开了两个文件,看到了一个小的差异,这可能就是原因。
工作子
1
00:00:02,412 --> 00:00:04,363
- So, dear...
- What?
2
00:00:04,574 --> 00:00:06,359
Do you see anything you like?
3
00:00:06,653 --> 00:00:08,887
I don't know. What's venison?
非工作子
1
00:00:02:640 --> 00:00:05:160
Well, this is gonna be
a sucky weekend.
2
00:00:05:440 --> 00:00:09:720
Try spending it with an 11 -year-old
who does nothing but complain.
3
00:00:10:280 --> 00:00:12:080
You mean me?
差:
正如您所看到的,唯一的区别是时间戳中使用的逗号。
00:00:02,412 --> 00:00:04,363
vs 00:00:02:640 --> 00:00:05:160
我尝试用逗号替换冒号,效果很好。所以我的问题是,是否可以使用正则表达式字符串替换来完成此操作?如果是,那么如何。
答案 0 :(得分:3)
尝试使用 Positive Lookbehind 和 Positive Lookahead 来匹配所有无效的冒号,现在只需用逗号替换它。
(?<=\d{2}:\d{2}:\d{2}):(?=\d+)
不需要任何编辑器。只需从演示中复制它。
查找内容:(?<=\d{2}:\d{2}:\d{2}):(?=\d+)
替换为:,
不要忘记检查正则表达式单选按钮。
答案 1 :(得分:3)
也许是这样:
(\d{2}:\d{2}:\d{2}),(\d{3})
替换为
\1:\2
如果您的编辑器使用美元进行反向引用,请使用$1:$2
。