Я хотел бы извлечь текст в bold с поддержкой Java regex.Извлечь текст без условного lookahead в Java
я мог заставить его работать с помощью условного предпросмотр, с регулярным выражением будучи
(\d{2})(\d{1,2})(\d{1,2})\s+(\d{1,2}):(\d{1,2}):(\d{1,2})\s+(\S+)\s+(?(?=.*\d{4}-\d{1,2}-\d{1,2})([^\d{4}]*)|(.*))
Однако Java класс шаблон не поддерживает условные lookaheads. Есть ли способ переписать регулярное выражение так, чтобы он работал с классом Java Pattern?
160203 03:24:24 mysqld_safe Запуск демона туздЫ с базами данных из/вар/Библиотека/MySQL 2016-02-03 3:24:25 0 [Внимание] TIMESTAMP с неявным значением по умолчанию является устаревшим. Используйте опцию -explicit_defaults_for_timestamp (подробнее см. Документацию) .2016-02-03 03:24:25 0 [Примечание] /opt/devenv/mysql/mysql-5.6.27-linux-glibc2.5-x86_64/ bin/mysqld (mysqld 5.6.27), начиная с процесса 29491 ... 2016-02-03 03:24:25 29491 [Примечание] Доступен IPv6.
160203 21:33:17 mysqld_safe Число процессов работает в настоящее время: 0
160203 21:33:17 mysqld_safe туздЫ перезапущен 2016-02-03 21:33:18 1125 [Примечание] Сервер hostname (bind-address): '*'; порт: 33062016-02-03 21:33:18 1125 [Примечание] Доступен IPv6.
Вы должны уточнить свое правило для извлечения текста. Ex, это должно быть начало строки или sth. –
Конечно, должен был упомянуть об этом. Я хочу подобрать весь текст до первого появления даты patttern, аналогичной 2016-02-03 ИЛИ до конца, если шаблон не найден. –