@Hanharr

Почему не работает регулярное выражение?

Всем доброго времени суток.

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

Регулярное выражение: ^total processes:[ \t]+([0-9]+)$

Тестирую на данных:
spoiler
HTTP/1.1 200 OK
Server: nginx/1.12.0
Date: Tue, 23 Jul 2019 12:46:18 GMT
Content-Type: text/plain; charset=utf-8
Transfer-Encoding: chunked
Connection: keep-alive
Keep-Alive: timeout=5
X-Powered-By: PHP/5.4.45
Expires: Thu, 01 Jan 1970 00:00:00 GMT
Cache-Control: no-cache, no-store, must-revalidate, max-age=0

pool: www
process manager: ondemand
start time: 23/Jul/2019:15:40:10 +0300
start since: 368
accepted conn: 12273
listen queue: 0
max listen queue: 0
listen queue len: 0
idle processes: 49
active processes: 4
total processes: 53
max active processes: 42
max children reached: 0
slow requests: 0


Получаю сообщение о том, что шаблон не совпадает. Если же убрать символы начала и конца строки, то все работает. Почему так?
  • Вопрос задан
  • 840 просмотров
Пригласить эксперта
Ответы на вопрос 1
dollar
@dollar
Делай добро и бросай его в воду.
Если же убрать символы начала и конца строки, то все работает

Очевидно, что-то есть в начале или в конце. Например, символ новой строки. Ну или ещё есть вариант, что весь текст склеивается в строку или что-то в этом роде (вряд ли).
^total processes:[ \t]+([0-9]+)[\r\n]$

Для проверки попробуйте банально понять, что же там такое:
total processes:[ \t]+[0-9]+(.*)$
^(.*)total processes:[ \t]+[0-9]+
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы