Expr
Материал из VAAL-WIKI
expr — команда для вычисления арифметических выражений.
Синтаксис
expr ВЫРАЖЕНИЯ
expr OPTION
Выражения
Выражения состоят из аргументов отделяемых пробелами и могут принимать следующий вид:
Выражение | Результат |
arg1 "|" arg2 | arg1, если он не пустой и не 0, в противном случае arg2 |
arg1 "&" arg2 | arg1, если ни один аргумент не равен нулю или 0, в противном случае 0 |
arg1 "<" arg2 | 1, если arg1 меньше arg2, в обратном случае 0 |
arg1 "<=" arg2 | 1, если arg1 меньше или равен arg2, в обратном случае 0 |
arg1 "=" arg2 | 1, если arg1 равен arg2, в обратном случае 0 |
arg1 "!=" arg2 | 1, если arg1 не равен arg2, в обратном случае 0 |
arg1 ">=" arg2 | 1, если arg1 больше или равен arg2, в обратном случае 0 |
arg1 ">" arg2 | 1, если arg1 больше arg2, в обратном случае 0 |
arg1 "+" arg2 | Арифметическая сумма arg1 и arg2 |
arg1 "-" arg2 | Арифметическая разность arg1 и arg2 |
arg1 "*" arg2 | Арифметическое произведение arg1 и arg2 |
arg1 "/" arg2 | Арифметическое частное от деления arg1 на arg2 |
arg1 "%" arg2 | Арифметический остаток от деления arg1 на arg2 |
STRING : REGEXP | Верно, если найдена маска REGEXP в строке STRING |
match STRING REGEXP | Тоже что и STRING : REGEXP |
substr STRING POS LENGTH | Подстрока из STRING, первая позиция нумеруется как 1 |
index STRING CHARS | Позиция вхождения символа CHARS в строке STRING, если найден, иначе 0 |
length STRING | Длина строки STRING |
+ TOKEN | Интерпретировать TOKEN как строку, даже если это ключевое слово match или оператор / |
( EXPRESSION ) | Значение выражения EXPRESSION |
Следует помнить, что операторы должны быть экранированы или заключены в кавычки. Арифметическое сравнение допустимо только для чисел, иначе сравнивается, как текст. Сопоставление с шаблоном возвращает строку между \( и \) или нуль; если \( и \) не используются, то возвращается число совпавших символов или 0.
Статус вычисления выражения устанавливается в:
- 0, если выражение не пустое и не 0;
- 1, если выражение равно нулю или 0;
- 2, если выражение синтаксически неверно;
- 3, если произошла ошибка.