¿Cómo utilizar Sed para editar texto en un archivo .srt?

¿Cómo utilizar Sed para editar texto en un archivo .srt?

Tengo un problema con el archivo de subtítulos (.srt). No funciona. Y quiero agregar algún parámetro a muchas líneas de texto con Regex en el programa Sed.

cambios de este patrón:

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

a esto:

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

",000" añadido después de "hh:mm:ss"

¿Cómo escribir expresiones regulares para este problema?

Respuesta1

Utilice lo siguiente:

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

Reemplazará cada aparición de tiempo en el formato XX:XX:XXcon XX:XX:XX,000. &es un carácter especial que hace referencia al patrón encontrado.

Respuesta2

Con GNU sed:

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

Respuesta3

Esto podría funcionar para usted (GNU sed):

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

información relacionada