Интернет магазин китайских планшетных компьютеров



Компьютеры - Expr

30 апреля 2011





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

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

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

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

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

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

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



Просмотров: 562


<<<