我的字幕文件 (.srt) 有问题。它无法工作。我想在 Sed 程序中使用 Regex 为多行文本添加一些参数。
与此模式相比,发生了以下变化:
00:00:00 --> 00:00:06
更改为:
00:00:00,000 --> 00:00:06,000
在“hh:mm:ss”后添加“,000”
如何为这个问题编写正则表达式?
答案1
使用以下内容:
sed 's/[0-9][0-9]:[0-9][0-9]:[0-9][0-9]/&,000/g' your_file.srt > new_file.srt
XX:XX:XX
它将用 .替换格式中出现的每个时间XX:XX:XX,000
。 .&
是一个特殊字符,指的是找到的模式。
答案2
使用 GNU sed:
sed -r 's/(([0-9]{2}:){2}[0-9]{2})/\1,000/g'
答案3
这可能对你有用(GNU sed):
sed -r 's/((^|\s)[0-9]{2}(:[0-9]{2}){2})(\s|$)/\1,000\4/g' file