Объединение
Выражение объединения состоит из нескольких выражений (операндов), разделенных оператором объединения ??. Логика объединения позволяет выбирать из списка выражений первое значение, которое соответствует заданному условию.
Оператор ?? полезен при обработке ошибок, так как позволяет задавать альтернативные способы обработки данных.
Синтаксис
Список принятых обозначений
В данном разделе при описании выражений приняты следующие обозначения:
-
Элементы выражений разделены тильдой.
-
Круглые скобки служат для группировки элементов выражения.
-
Если в выражении используется литерал скобок или других символов, они заключаются в кавычки:
"("."NEWLINE"обозначает перевод строки. -
Квантификаторы после элементов и групп обозначают количество повторений:
-
?— элемент необязателен, может отсутствовать в выражении; -
+— элемент обязателен и может повторяться в выражении несколько раз; -
*— элемент может отсутствовать или повторяться несколько раз.
-
expression ~ (operator ~ expression)+
| Элемент | Описание |
|---|---|
expression |
Любое выражение. |
operator |
Оператор. Разделяет два или более выражения. |
| Используйте VRL-песочницу, чтобы проверить работу программы. |
Пример объединения при ошибке
parse_syslog("не Syslog") ?? parse_common_log("не Common Log Format") ?? "malformed"
malformed
Была ли полезна эта страница?