首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >regex插入字符到空白SRT中

regex插入字符到空白SRT中
EN

Stack Overflow用户
提问于 2021-05-05 19:56:35
回答 1查看 51关注 0票数 0

我有一个与视频相关的空白SRT文件,时间序列已经在一个转录软件平台中设置了(即每个标题的边界已经设置,但标题没有被记录下来),我已经将视频上传到youtube,现在我想将空白的SRT文件上传到它,这样就可以有人使用YouTube的转录/翻译平台来转录它了。

空白SRT:

代码语言:javascript
复制
1
00:00:01,05 --> 00:00:04,64


2
00:00:05,02 --> 00:00:07,18


3
00:00:07,81 --> 00:00:11,03


4
00:00:11,04 --> 00:00:15,92


5
00:00:16,35 --> 00:00:17,11

但是有一个问题,因为字幕中没有文字,youtube不识别时间序列,所以当srt上传到youtube中的视频时不会发生任何事情。

为了解决这个问题,我在每次代码(通常是"-")下面的空行中放置一个非字母数字字符。

带有破折号的SRT文件:

代码语言:javascript
复制
1
00:00:01,05 --> 00:00:04,64
-

2
00:00:05,02 --> 00:00:07,18
-

3
00:00:07,81 --> 00:00:11,03
-

4
00:00:11,04 --> 00:00:15,92
-

5
00:00:16,35 --> 00:00:17,11
-

这是非常手动的过程,可能需要很长时间。必须有一种方法在类似Notepad++的东西中使用查找和替换,并简单地添加破折号。我试着用regex做这件事,但是遇到了问题。

^$正确地针对空行,但是,如果我简单地用“--”I get替换它们:

代码语言:javascript
复制
1
00:00:01,05 --> 00:00:04,64
-
-
2
00:00:05,02 --> 00:00:07,18
-
-

这是不可接受的,因为它破坏了SRT的语法,当将这样的SRT上传到youtube时,它认为内容是一个单独的标题。因此,我只需要在第一行空白行中放置一个破折号,这一行就在时间码的正下方。

我不知道如何只在每对空行中选择第一行。如有任何解决办法,将不胜感激。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2021-05-05 20:01:09

可以在行尾与换行符后面的特定格式进行匹配,并直接断言字符串的末尾,然后用完全匹配和-替换。

找到什么

代码语言:javascript
复制
-->\h+\d\d:\d\d:\d\d,\d+\R$

替换为

代码语言:javascript
复制
$0-

Regex演示

或者只匹配逗号、数字和换行符后面的锚点的短变体:

代码语言:javascript
复制
,\d+\R$
票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/67407964

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档