Ответов: 47 Просмотров: 5176
|
Здравствуйте.
Столкнулся с необходимостью обработки текстового файла скриптом.
сам никак. Прошу помощи.
Алгоритм работы скрипта такой:
1. Удаляется всё до строки, начинающейся с символа #
2. Строка формата
# · 00:44.291 > 00:46.894
заменяется на две строки в формате
1
00:00:44,291 --> 00:00:46,894
где # заменяется порядковым номером, начиная с 1 (в идеале: 1 - по умолчанию, но если можно будет запускать с ключом, задающим начало отсчета, то здорово, если нет, то тоже хорошо)
В исходном варианте символ-стрелка между цифрами может быть другим (см. пример ниже), формат времени может быть 00.000 или 00:00.000 или 00:00:00.000 (вместо последней точки допускаю, что может быть запятая, хотя не встречал, но в скрипте лучше предусмотреть)
В итоговом варианте формат времени только 00:00:00,000 (с запятой)
3. удаляются пустые строки (в них возможны пробелы и табуляция)
4. непустые строки с текстом оставляются до первой встреченной пустой строки.
5. удаляются пустые строки (возможны пробелы и табуляция) и все последующие непустые строки до встречи символа #
6. далее возврат к п.2
Пример:
Исходный вариант: (Отобразить)It's something you experience in childhood,
# · 04:00.288 → 04:02.422
Такое, что бывает в детстве,
Legenda6 20.09.16 в 21:44
0
and you never expect to again,
# · 04:02.423 → 04:03.724
и ты думаешь, что больше такого не будет,
Legenda6 20.09.16 в 21:44
0
a feeling of being hollowed out,
# · 04:03.725 → 04:05.693
чувство опустошенности,
Legenda6 20.09.16 в 21:44
0
a void inside which seems
as if it'll never be filled.
# · 04:05.694 → 04:08.996
пустота внутри, и кажется,
её уже ничего не заполнит.
Legenda6 20.09.16 в 21:45 После обработки: (Отобразить)1
00:04:00,288 --> 00:04:02,422
Такое, что бывает в детстве,
2
00:04:02,423 --> 00:04:03,724
и ты думаешь, что больше такого не будет,
3
00:04:03,725 --> 00:04:05,693
чувство опустошенности,
4
00:04:05,694 --> 00:04:08,996
пустота внутри, и кажется,
её уже ничего не заполнит. |