
Ich habe ein Problem mit der Untertiteldatei (.srt). Sie funktioniert nicht. Und ich möchte mit Regex im Sed-Programm mehrere Textzeilen mit einigen Parametern versehen.
Änderungen von diesem Muster:
00:00:00 --> 00:00:06
dazu:
00:00:00,000 --> 00:00:06,000
„,000“ nach „hh:mm:ss“ hinzugefügt
Wie schreibt man einen regulären Ausdruck für dieses Problem?
Antwort1
Verwenden Sie Folgendes:
sed 's/[0-9][0-9]:[0-9][0-9]:[0-9][0-9]/&,000/g' your_file.srt > new_file.srt
Dabei wird jedes Vorkommen der Zeit im Format durch . ersetzt, XX:XX:XX
ein XX:XX:XX,000
Sonderzeichen &
, das sich auf das gefundene Muster bezieht.
Antwort2
Mit GNU sed:
sed -r 's/(([0-9]{2}:){2}[0-9]{2})/\1,000/g'
Antwort3
Dies könnte für Sie funktionieren (GNU sed):
sed -r 's/((^|\s)[0-9]{2}(:[0-9]{2}){2})(\s|$)/\1,000\4/g' file