expr

Материал из Seo Wiki - Поисковая Оптимизация и Программирование
Перейти к навигацииПерейти к поиску

expr — программа в UNIX‐подобных ОС, вычисляющая значение выражения и выводящая результат на стандартный вывод. Каждая лексема выражения должна быть отдельным аргументом. Операнды могут быть как числами, так и строками. Строковые операнды не надо заключать в кавычки, хотя это может быть и необходимо сделать для предотвращения интерпретации их шеллом. expr определяет тип операнда (целое число или строка) по применяемой к нему операции.

Использование

  • expr выражение…
  • expr {--help,--version}

Поддерживаемые операторы

Действительны следующие операторы (в порядке возрастания приоритета):

  • |дизъюнкция
  • &конъюнкция
  • < <= = == != >= > — сравнить аргументы и возвратить 1, если операция отношения верна, и 0 в противном случае. (== является синонимом =.) expr пытается привести оба аргумента к числовому типу и произвести числовое сравнение; если приведение не удаётся произвести хотя бы для одного аргумента, то производится лексикографическое (строковое) сравнение
  • + - — произвести указанные арифметические операции. Перед этим оба аргумента приводятся к числовому типу; если это нельзя сделать, выдаётся сообщение об ошибке
  • * / % — произвести указанные арифметические операции («%» — это операция деления по модулю, как в C). Перед этим оба аргумента приводятся к числовому типу; если это нельзя сделать, выдаётся сообщение об ошибке
  • : — произвести поиск по шаблону. Оба аргумента приводятся к строковому типу, при этом второй считается регулярным выражением с неявно добавленным символом «^» в начале. После этого в первом аргументе производится поиск по второму в качестве шаблона. Если найдено соответствие и часть строки выделена символами «(» и «)», то значением операции : является эта часть; в противном случае возвращается целое число, равное количество символов, соответствующих шаблону. Если соответствие не найдено и часть строки выделена символами «(» и «)», то результатом операции : является пустая строка, в противном случае 0. При задании шаблона может быть использована только одна пара скобок «(» и «)»

Дополнительно распознаются следующие ключевые слова:

  • match строка рег_выр — ещё один способ произвести поиск по шаблону. Это выражение идентично «строка : регулярное_выражение»
  • substr строка позиция длина — возвращает подстроку в строке, начинающуюся с указанной позиции и не больше указанной длины. Если позиция либо длина отрицательны или не являются числами, вернуть пустую строку
  • index строка класс-символов — возвращает позицию в строке, в которой был впервые найден символ из класса-символов. Если ни одного такого символа не было найдено, вернуть 0
  • length строка — возвращает длину строки

Для группировки можно применять круглые скобки. В качестве строковых операндов нельзя использовать ключевые слова.

Ссылки

  • expr(1) — страница справки man в GNU/Linux <span class="ref-info" title="{{{Expansion depth limit exceeded}}}" style="font-size:85%; cursor:help; margin-left:0.2em; color:#888;">({{{Expansion depth limit exceeded}}}) (см. GNU Coreutils)
  • expr(1) — страница справки man по пользовательским командам OpenBSD <span class="ref-info" title="{{{Expansion depth limit exceeded}}}" style="font-size:85%; cursor:help; margin-left:0.2em; color:#888;">({{{Expansion depth limit exceeded}}})
  • expr(1) — страница справки man по пользовательским командам FreeBSD <span class="ref-info" title="{{{Expansion depth limit exceeded}}}" style="font-size:85%; cursor:help; margin-left:0.2em; color:#888;">({{{Expansion depth limit exceeded}}})

de:Expr en:Expr fr:Expr pl:Expr (Unix) pt:Expr vi:Expr

Если вам нравится SbUP.com Сайт, вы можете поддержать его - BTC: bc1qppjcl3c2cyjazy6lepmrv3fh6ke9mxs7zpfky0 , TRC20 и ещё....