Операторы языка форматирования ИРБИС — различия между версиями
Sokv (обсуждение | вклад) |
Sokv (обсуждение | вклад) (→Ссылки) |
||
(не показаны 3 промежуточные версии этого же участника) | |||
Строка 70: | Строка 70: | ||
* [[Функции языка форматирования ИРБИС]] | * [[Функции языка форматирования ИРБИС]] | ||
* [[UNIFOR]] | * [[UNIFOR]] | ||
+ | |||
+ | Источники информации: | ||
+ | * [[Общее описание системы ИРБИС64]] | ||
[[Категория:Язык форматирования системы ИРБИС]] | [[Категория:Язык форматирования системы ИРБИС]] | ||
+ | [[Категория:Анонсированные статьи]] |
Текущая версия на 17:37, 3 февраля 2013
Содержание
Арифметические операторы
В числовых выражениях языка форматирования ИРБИС допустимыми являются бинарные и унарные арифметические операторы.
Список бинарных арифметических операторов:
- + оператор сложения,
- - оператор вычитания,
- * оператор умножения,
- / оператор деления.
Примеры использования бинарных арифметических операторов:
1 + 2 4 / 2
Список унарных арифметических операторов:
- - унарный минус,
- + унарный плюс.
Примеры использования унарных арифметических операторов:
-val('1')
При отсутствии скобок унарные арифметические операции выполняются первыми, после этого выполняются операции умножения и деления, затем сложения и вычитания. Два и более операторов одного уровня выполняются слева направо.
Можно использовать скобки для изменения порядка вычисления: выражения, заключенные в скобки, вычисляются первыми; выражения с большей глубиной вложенности вычисляются перед выражениями с меньшей глубиной вложенности скобок.
Логические операторы
В логических выражениях языка форматирования ИРБИС используются логические операторы: NOT, AND, OR. Оператор NOT является унарным, операторы AND и OR бинарные.
Примеры использования логических операторов:
not mfn = 34 (v200 : 'люди') AND (v210^c.7 = 'Военное')
Логические операторы интерпретируются следующим образом:
- Оператор NOT дает значение истина, когда операнд имеет значение ложь, и значение ложь, когда операнд – истина. Оператор NOT может использоваться только как унарный, то есть он всегда применяется к логическому выражению, следующему за ним.
- Оператор AND дает значение истина, когда оба операнда истинны. Если хотя бы один из операндов имеет значение ложь, то результатом является ложь.
- Оператор OR дает значение истина, когда один или оба операнда истинны, в противном случае результатом является ложь.
При отсутствии скобок в логических выражениях сначала выполняются операции NOT, затем операции AND, и последними операции OR. Последовательность из двух или более операторов одного уровня обрабатывается слева направо. Можно использовать скобки для изменения порядка вычисления. Выражения, заключенные в скобки, вычисляются первыми, а выражения с большей глубиной вложенности вычисляются перед выражениями с меньшей глубиной вложенности скобок.
Операторы отношения и выражения отношения
Выражение отношения позволяет определять, находятся ли указанные два значения в соответствующем соотношении, или нет. Выражения отношения могут принимать одно из двух значений, истина или ложь, и используются в качестве операндов логических выражений.
Общий вид выражения отношения следующий:
операнд-1 оператор-отношения операнд-2
где оба операнда должны быть одного типа: числовыми или строковыми выражениями.
Список операторов отношения:
- = равно;
- <> не равно;
- < меньше;
- <= меньше или равно;
- > больше;
- >= больше или равно;
- : содержит.
Операторы отношений =, <>, <, <=, >, >= имеют обычное значение при их применении к числовым выражениям. При сравнении строковых выражений применяются следующие правила:
- Строки сравниваются в точности в том виде, в каком они есть, то есть прописные и строчные буквы сравниваются по своим кодам (например, код буквы А будет меньше кода буквы а).
- Два строковых выражения не считаются равными, если они не имеют одинаковой длины. Если два выражения, представляющие строки различной длины, таковы, что посимвольно совпадают до конца более короткой строки, то считается, что более короткая строка является меньше более длинной строки.
Оператор : (содержит) используется только для строковых выражений. Проверяет наличие вхождения строки символов, определенной первым операндом, в другую строку, определенную вторым операндом. При наличии такого вхождения выражение принимает значение истина. Этот оператор является нечувствительным к прописным и строчным буквам, для него соответствующие прописные и строчные буквы одинаковы. Например, результатом выражения
v10 : 'химия'
будет истина, если поле 10 содержит в качестве своей подстроки строку химия, в противном случае результатом будет ложь. Отметим, что вторым операндом может быть произвольная строка символов, которая не обязательно совпадает со словом. Так, в приведенном выше примере, результат будет истина не только, когда поле 10 содержит слово химия, но и когда поле содержит такие слова, как биохимия, фотохимия и др.
Ссылки
См. также:
Источники информации: