Câu hỏi Làm thế nào để sử dụng Sed để chỉnh sửa văn bản trong tập tin .srt?


Tôi gặp sự cố với tệp phụ đề (.srt). Nó không hoạt động. Và tôi muốn thêm một số tham số cho nhiều dòng văn bản với chương trình Regex trong Sed.

thay đổi từ mẫu này:

00:00:00 --> 00:00:06

này:

00:00:00,000 --> 00:00:06,000

", 000" được thêm sau "hh: mm: ss"

Làm thế nào để viết regex cho vấn đề này?


2
2017-09-29 21:40


gốc


@Kane Tôi hỏi về regex cho mẫu thay đổi "hh: mm: ss -> hh: mm: ss" thành "hh: mm: ss, 000 -> hh: mm: ss, 000". Tôi nghĩ rằng regex là một loại lập trình.
@ terces907 xin lỗi tôi đã hiểu sai câu hỏi của bạn - Kane


Các câu trả lời:


Sử dụng như sau:

sed 's/[0-9][0-9]:[0-9][0-9]:[0-9][0-9]/&,000/g' your_file.srt > new_file.srt

Nó sẽ thay thế mọi lần xuất hiện trong định dạng XX:XX:XX với XX:XX:XX,000. & là một ký tự đặc biệt dùng để chỉ mẫu tìm thấy.


1
2017-09-29 22:02





Với GNU sed:

sed -r 's/(([0-9]{2}:){2}[0-9]{2})/\1,000/g'

1
2017-09-29 22:05





Điều này có thể phù hợp với bạn (GNU sed):

sed -r 's/((^|\s)[0-9]{2}(:[0-9]{2}){2})(\s|$)/\1,000\4/g' file

1
2017-10-01 07:46