Сравнение

Выражение сравнения сравнивает два выражения (операнда) и возвращает логическое значение в соответствии с оператором.

Синтаксис

Список принятых обозначений

В данном разделе при описании выражений приняты следующие обозначения:

  • Элементы выражений разделены тильдой.

  • Круглые скобки служат для группировки элементов выражения.

  • Если в выражении используется литерал скобок или других символов, они заключаются в кавычки: "(". "NEWLINE" обозначает перевод строки.

  • Квантификаторы после элементов и групп обозначают количество повторений:

    • ? — элемент необязателен, может отсутствовать в выражении;

    • + — элемент обязателен и может повторяться в выражении несколько раз;

    • * — элемент может отсутствовать или повторяться несколько раз.

expression ~ operator ~ expression
Элемент Описание

expression

Операнд может быть любым выражением, которое возвращает тип, допустимый для оператора.

operator

Оператор определяет операцию, выполняемую над операндами слева и справа:

  • == — равно;

  • != — неравно;

  • > — больше;

  • >= — больше или равно;

  • < — меньше;

  • <= — меньше или равно.

Используйте VRL-песочницу, чтобы проверить работу программы.

Равенство и неравенство

Операторы == и != предназначены для сравнения между собой любых значений. Числовые значения разных типов могут быть равными, другие значения считаются равными, только если относятся к одному типу.

Примеры равенства и неравенства

Пример равенства чисел

Исходный код
1 == 1.0
Результат
true

Пример неравенства чисел

Исходный код
2 * 2 != 5
Результат
true

Пример сравнения объектов

Исходный код
{"key1": "value1", "key2": "value2"} == {"key2": "value2", "key1": "value1"}
Результат
true

Пример сравнения пустых значений

Исходный код
null == null
Результат
true

Пример сравнения значений разных типов

Исходный код
2 == "2"
Результат
false

Сравнение порядка

Операторы сравнения >, <, >= и <= применимы только к числам, строкам и меткам времени.

При сравнении строк используется лексикографический порядок, где символы сравниваются последовательно, на основе их номеров в таблице Unicode.

При сравнении меток времени большими считаются метки более поздней даты.

Примеры сравнения порядка

Примеры сравнения чисел

Оператор Исходный код Результат

Больше или равно

2 >= 2.0

true

Больше

2 > 1

true

Меньше или равно

2.0 <= 2

true

Меньше

1 < 2

true

Пример сравнения временных меток

Исходный код
t'2024-04-04T22:22:22.234142+01:00' > t'2024-04-04T22:22:22.234142+04:00'
Результат
true

Пример сравнения строк

Исходный код
"ё" > "я"
# Буква "ё" находится в таблице Unicode после "я".
Результат
true

Была ли полезна эта страница?

Обратная связь