У меня есть вывод, который выглядит следующим образом:
текст бла-бла-мусора
больше текста мусора, который не имеет значения
Продолжительность: 00: 02: 55.34, начало: 0,000000, битрейт: 4097 кб / с
еще немного мусорного текста
еще больше мусорного текста
В java я использую регулярное выражение, чтобы превратить эту строку в обычный старый
00: 02: 55.34
но он не заменяет строки сверху и снизу.Использование этой строки кода:
String durationString = s.replaceAll(".*Duration: (\\d\\d:\\d\\d:\\d\\d(\\.\\d\\d?)?).*", "$1");
приводит к следующему:
текст бла-бла-мусора
больше текста мусора, который не имеет значения
00: 02: 55.34
еще немного мусорного текста
еще больше мусорного текста
Видимо,. * не захватывает новые строки, поскольку заменяет только текст в той же строке.
- Как я могу сделать захват. * Символом новой строки?
- Если 1. невозможно, есть ли способ сделать то, что мне нужно, если я не знаю, сколько строк текста мусорасверху и снизу?