Где ошибка в регулярном выражении?

152
24 ноября 2018, 14:40

Подскажите, почему не срабатывает регулярка

/^[0-9]{4}[-]{1}[0-9]{2}[-]{1}[0-9]{2} [0-9]{2}[:]{1}[0-9]{2}[:]{1}[0-9]{2}$

должна вырывать дату :

2018-07-16 21:09:02 - Host: - UNCAUGHT_EXCEPTION - [Bitrix\Main\DB\SqlQueryException]

находит если только слева и справа от даты больше символов нет

полный пример текста :

2018-07-16 21:09:02 - Host:  - UNCAUGHT_EXCEPTION - [Bitrix\Main\DB\SqlQueryException] 
Mysql query error: (1146) Table 'sitemanager.b_option' doesn't exist (400)
SELECT o.SITE_ID, o.MODULE_ID, o.NAME, o.VALUE FROM b_option o 
/home/bitrix/www/bitrix/modules/main/lib/db/mysqliconnection.php:137
#0: Bitrix\Main\DB\MysqliConnection->queryInternal(string, array, NULL)
    /home/bitrix/www/bitrix/modules/main/lib/db/connection.php:330
#1: Bitrix\Main\DB\Connection->query(string)
    /home/bitrix/www/bitrix/modules/main/lib/config/option.php:226
#2: Bitrix\Main\Config\Option::load(string, NULL)
    /home/bitrix/www/bitrix/modules/main/lib/config/option.php:53
#3: Bitrix\Main\Config\Option::get(string, string, string)
    /home/bitrix/www/bitrix/modules/main/lib/httprequest.php:370
#4: Bitrix\Main\HttpRequest->prepareCookie(array)
    /home/bitrix/www/bitrix/modules/main/lib/httprequest.php:68
#5: Bitrix\Main\HttpRequest->__construct(object, array, array, array, array)
    /home/bitrix/www/bitrix/modules/main/lib/httpapplication.php:46
#6: Bitrix\Main\HttpApplication->initializeContext(array)
    /home/bitrix/www/bitrix/modules/main/lib/application.php:122
#7: Bitrix\Main\Application->initializeExtendedKernel(array)
    /home/bitrix/www/bitrix/modules/main/include.php:1
#8: require_once(string)
    /home/bitrix/www/bitrix/modules/main/include/prolog_before.php:14
#9: require(string)
    /home/bitrix/www/bitrix/modules/main/tools/cron_events.php:11
----------
Answer 1

Проверка на конец строки лишняя. Там же после даты ещё текст идёт с описанием исключения.

Ну и ещё надо не накосячить с флагами многострочного режима, чтобы начало строки мапилось на начало каждой строчки лога, а не на весь лог целиком. Но этого места в приведённом коде нет.

READ ALSO
Выполнение DRY на практике

Выполнение DRY на практике

Всем приветПишу на laravel

166
Как отправить oAuth данные клиента server и получить информацию из google analytics?

Как отправить oAuth данные клиента server и получить информацию из google analytics?

Нужно использовать Google analytics api , возникла необходимость сохранить данные пользователя , и предоставить доступ к данным другому пользователю,

148