Нужен совет по регулярным выражениям. На zabbix 2.0.8 пытаюсь исключить ненужные интерфейсы, но выражение никак не срабатывает. Проверил на regexpal.com — там всё в порядке, а zabbix никак не "допрёт". Пробовал также варианты с инверсией по ?!, естественно с другим логическим результатом, — всё так же. Простые regexp'ы типа ^usb работают, а со сложными беда.
Ad Widget
Collapse
Непонятное с регулярными выражениями
Collapse
X
-
-
Скорее всего это вообще лишнее здесь.\w+ у вас не будет работать
Уберите из regexp'a вот это "\w+$" и проверьте - должно работатьComment
-
Нет, не лишнее. Человек хотел, что бы проверка была на разное окончание (т.е., например, под правило ipwl попадали бы так же ipwl0, ipwlif и т.д.). А вообще, раз не работает \w, то я бы тогда поменял правило в скобке и поставил после каждого искомого слова .*. Например, ipwl.*|plip.* и т.д.Comment
-
Судя по исходному regexp, я понял, что человек хочет отбросить все интерфейсы, имя которых начинается с перечисленных им сокращений + минимум один буквенный или цифровой символ или знак подчёркивания.
Т.е. он хотел отбрасывать ipwl0 и ipwlif, но оставлять ipwl.
Тогда проблемы быть не должно, если убрать из исходного regexp "\w+" (символ $ нужно оставить, тут я не прав) и изменить результат на "Result is TRUE".
Ajax, проявитесь! А то мы тут дофантазируемся по Вашей проблеме весьма далеко ))Comment
-
Спасибо за ответы, собственно всё было в первом посте ArtemK. При чём [[:alnum:]] не работает, хотя [[:digit:]] (к примеру) работает где нужно, но это скорее проблема связки zabbix 2.0.8 + php 5.5.8.
Вопрос с интерфейсами решился комбинированием одиночных простых правил:
Результат более чем полностью работает. Если вдруг кому интересно то такой зоопарк интерфейсов из-за сети в которой мониторятся freebsd + os x сервера.Code:1 » ^gif [Результат БРЕХНЯ] 2 » ^fw [Результат БРЕХНЯ] 3 » ^plip [Результат БРЕХНЯ] 4 » ^ipfw [Результат БРЕХНЯ] 5 » ^usb [Результат БРЕХНЯ] 6 » ^stf [Результат БРЕХНЯ]
Comment
Comment