Работа с регулярными выражениями
На странице Журналы в реальном времени есть возможность отфильтровать строки с помощью регулярных выражений. Данный механизм позволяет выделять из потока файлов только те строки, которые соответствуют заданному шаблону, что значительно упрощает диагностику ошибок, поиск сетевых событий и анализ работы служб AxelNAC.
Основные элементы регулярных выражений
Позиционные:
- ^ — поиск строк, которые начинаются с указанного выражения;
- $ — поиск строк, которые заканчиваются на указанное выражение;
- \b — обозначает границу выражения.
Символьные классы:
- \d — любая цифра;
- \w — любая буква или цифра;
- \s — любой пробельный символ;
- . — любой символ, кроме символа новой строки;
- [abc] — поиск строк, содержащих любой символ из набора;
- [^abc] — поиск строк, содержащих любой символ, кроме указанных;
- [A-Z] — поиск строк, содержащих заглавные буквы;
- [a-z] — поиск строк, содержащих строчные буквы;
- [0-9] — поиск строк с любой цифрой.
Группирующие:
- () — группировка выражений;
- | — логическое «или».
Квантификаторы:
- {n}— поиск строк, где указанный символ или группа встречаются ровно n раз;
- {m,n} — поиск строк, где указанный символ или группа встречаются от m до n раз;
- * — поиск строк, где указанный символ или группа встречаются ноль или более раз;
- + — поиск строк, где указанный символ или группа встречаются один или более раз;
- ? — поиск строк, где указанный символ или группа встречаются ноль или один раз.
Экранирование специальных символов:
- \ — экранирует следующий символ, позволяя использовать метасимволы в качестве их буквальных значений.
Примеры использования
-
Поиск строк, содержащих ошибки или отказ доступа:
error|fail|failed|denied|reject -
Поиск строк, содержащих MAC-адрес:
([0-9A-Fa-f]{2}:){5}[0-9A-Fa-f]{2} -
Поиск строк, содержащих IPv4-адрес:
\b((\d|[1-9]\d|1\d{2}|2[0-4]\d|25[0-5])\.){3}(\d|[1-9]\d|1\d{2}|2[0-4]\d|25[0-5])\b