使用Python语言,将Srt文件中两行英文字幕变成一行英文字幕
时间: 2024-05-04 07:17:37 浏览: 18
您好,关于您的问题,可以使用Python的字符串操作和正则表达式来解决。以下是一个可能的解决方案:
```python
import re
def merge_srt_lines(file_path):
# 读取Srt文件
with open(file_path, 'r', encoding='utf-8') as f:
lines = f.readlines()
# 合并英文行
result_lines = []
for i in range(len(lines)):
line = lines[i].strip()
# 判断是否为字幕序号
if re.match(r'^\d+$', line):
result_lines.append(line)
else:
# 合并英文行
if re.match(r'^[a-zA-Z]', line):
j = i + 1
while j < len(lines) and not re.match(r'^\d+$', lines[j].strip()):
line += ' ' + lines[j].strip()
j += 1
i = j - 1
result_lines.append(line)
# 写入新的Srt文件
with open(file_path + '.new', 'w', encoding='utf-8') as f:
f.write('\n'.join(result_lines))
```
您可以调用该函数,并传入您的Srt文件路径,函数会在同一目录下生成一个新的Srt文件,其中每个字幕条目只占一行。希望能够帮助到您!如果您有任何其他问题,欢迎继续问我。