Выражения — различия между версиями
Elena (обсуждение | вклад) |
Elena (обсуждение | вклад) |
||
Строка 368: | Строка 368: | ||
|Год. | |Год. | ||
|} | |} | ||
− | |||
− | |||
− | |||
− | |||
Специальные символы, доступные для использования в составе выражений: | Специальные символы, доступные для использования в составе выражений: | ||
− | + | {|cellpadding="10" cellspacing="0" border="1" | |
− | + | !Спецсимвол | |
− | Спецсимвол | + | !Параметры |
− | + | !Тип возвращ. значения | |
− | + | !Описание | |
− | + | |- | |
− | + | |EndLine (), | |
− | EndLine (), | + | |
− | + | ||
EndLine | EndLine | ||
− | + | |нет | |
− | + | |Строка | |
− | + | |Возвращает символ конца строки. | |
− | + | |- | |
− | Tab (), | + | |Tab (), |
− | + | ||
Tab | Tab | ||
− | + | |нет | |
− | + | |Строка | |
− | + | |Возвращает символ табуляции. | |
− | + | |- | |
− | Quot (), | + | |Quot (), |
− | + | ||
Quot | Quot | ||
− | + | |нет | |
− | + | |Строка | |
− | + | |Возвращает символ одинарной кавычки. | |
− | + | |- | |
− | DblQuot (), | + | |DblQuot (), |
− | + | ||
DblQuot | DblQuot | ||
− | + | |нет | |
− | + | |Строка | |
− | + | |Возвращает символ двойной кавычки. | |
− | + | |} | |
− | + | ||
− | + | ||
− | + | ||
− | + | ||
Константы, доступные для использования в составе выражений: | Константы, доступные для использования в составе выражений: | ||
− | + | {|cellpadding="10" cellspacing="0" border="1" | |
− | + | !Константа | |
− | Константа | + | !Тип возвращ. значения |
− | + | !Описание | |
− | + | |- | |
− | + | |Pi | |
− | Pi | + | |Число |
− | + | |Число «Пи». 3,1415926... | |
− | + | |- | |
− | + | |Fi | |
− | Fi | + | |Число |
− | + | |Число «Фи». 1,6180339... | |
− | + | |- | |
− | + | |E | |
− | E | + | |Число |
− | + | |Число «E». 2,74182818... | |
− | + | |} | |
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | |||
− | + | В качестве типов параметров (число и строка) указаны ожидаемые типы, в которые будет производится преобразование. Однако параметрами могут являться переменные другого типа, если они удовлетворяют [[Правило включения типов]]. | |
− | + | Функции без параметров можно указывать в выражении как с пустыми круглыми скобками в конце, так и без них. |
Версия 19:57, 19 апреля 2011
Выражение — это заданная создателем сценария последовательность арифметических или строковых действий, оперирующая с константами и переменными и функциями от них. Выражение используется для подстановки в качестве аргумента в значение объектов сценария. Значением выражения могут являться строка и число. Для явного указания строки заключайте текст в кавычки. В противном случае, сначала будут вычислены все арифметические комбинации, доступные для расчета. В приведенных примерах 7 и 8 результат будет разный, то есть началом результирующей строки примера 7 будет являться символ «5», а примера 8 – символы «23».
Примеры числовых выражений:
- [переменная_число_1] + 1
- 2 ^ [переменная_число_2] * ( Log10 ( [переменная_число_3] ) + 2 )
- Sin ( Len ( [переменная_строка_1] ) )
Примеры строковых выражений:
- [переменная_строка_1] + [переменная_строка_2]
- Кусок текста + [ переменная_строка_1]
- "Кусок текста" + [переменная_строка_1]
- 2 + 3 + [переменная_строка_1]
- "2" + "3" + [переменная_строка_1]
- SubStr ( [переменная_строка], 1, Length ( [переменная_строка] ) - 1 )
Для задания выражения служит соответствующая вкладка окна Аргументы. Выражения вычисляются в сценариях и результат вычисления подставляется в качестве аргумента текущего выполняемого объекта (свойства объекта) сценария.
Операции и подстановочные функции, доступные для использования в составе выражений:
Операция | Параметры | Тип возвращ. значения | Описание |
---|---|---|---|
+ | s1 + s2
x1 + x2 s + x x + s |
строка
число строка строка |
Если один из операндов функции является строкой, то возвращаемым значением будет строка, склеенная из двух частей. Если все операнды являются числами, результатом будет число. |
- | x1 - x2 | число | Вычитает из числа X1 число X2. |
* | x1 * x2 | число | Перемножает числа X1 и X2. |
/ | x1 / x2 | число | Делит число X1 на число X2. |
^ | x1 ^ x2 | число | Возводит число X1 в степень X2. |
( ) | Выставление приоритета любой арифметической операции. | ||
% | x1 % x2 | число | Возвращает действительный остаток от деления. |
& | x1 & x2
s1 & s2 x & s s & x |
число
строка строка строка |
Соединяет числа или строки (в строковом представлении).
Примеры: 2.16 & 3 => 2.163; "2" & 5 => "25"; 2 & -3 => "2-3" |
Функции для работы со строковыми и числовыми значениями, доступные для использования в составе выражений:
Функция | Параметры | Тип возвращ. значения | Описание |
---|---|---|---|
Abs (x) | x - число | Число | Абсолютная величина числа X. |
Cos (x) | x - число | Число | Косинус угла, определяемого параметром X в радианах. |
Ceil (x) | x - число | Число | Округляет число до целого в большую сторону. |
Char (x) | x - число | Строка | Возвращает ANSI-символ, соответствующий коду X (0 - 255). |
DecHex (x) | x - число | Строка | Возвращает строку с HEX-представлением числа. |
Eval (s) | s - строка | Число, строка | Осуществляет расчет вложенного выражения, содержащегося в строке-параметре. Таким образом, давая возможность динамически задавать выражения вне сценария.
Примеры: Eval ( "1 + 3" ) => 4; Eval ( "Привет" ) => ошибка; Eval ( " 'Привет' ") => "Привет"; Eval ( [cтр.переменная_1] ) => результат выполнения выражения, заданного в переменной; Eval ( " [стр.переменная_1] " ) => возвращает содержимое переменной. |
Exp (x) | x - число | Число | Экспонента числа X. |
Floor (x) | x - число | Число | Округляет число до целого в меньшую сторону. |
GuidToInt (s) | s - строка | Число | Формирует доволно уникальное целое число на основе передаваемой строки, содержащей представление GUID-идентификатора. |
HexDec (s) | s - строка | Число | Преобразует строку к числу, рассматривая ее как HEX-представление. |
IndexOf (s1, s2) | s1 - строка,
s2 - строка |
Число | Ищет подстроку S2 в строке S1 и возвращает номер позиции. Отсчет ведется с 0 символа. В случае, если подстрока не найдена, возвращается -1. |
Len (s) | s - строка | Число | Длина строки S в символах. |
Lg (x),
Log10 (x) |
x - число | Число | Десятичный логарифм числа X. |
Ln (x) | x - число | Число | Натуральный логарифм числа X. |
Log (x, y) | x - число
y - число |
Число | Логарифм числа Y по основанию X.
Если в функцию передается один параметр - возвращается его натуральный логарифм. |
Max (x, y) | x - число
y - число |
Число | Максимум из двух чисел X и Y. |
Min (x, y) | x - число
y - число |
Число | Минимум из двух чисел X и Y. |
NewId () | Строка | Возвращает строковое представление вновь сгенеренного GUID-идентификатора. Например 12A5A37E-B97A-45F7-86F1-87C88DA66CBA | |
Num (s) | s - строка | Число | Принудительное преобразование строки к числу. Если строка не является корректным числом, возвращает 0. |
Numval (s) | s - строка | Число | Принудительное преобразование строки к числу. Если строка не является корректным числом, возвращает число, преобразованное из максимального количества начальных символов строки-параметра, соответствующих корректному представлению. |
Random (x) | x - число | Число | Случайное целое число из отрезка [0, x-1]. |
Remove (s, idx, len) | s - строка,
idx - число, len - число |
Строка | Возвращает строку, полученную удалением из строки S символов в количестве LEN, начиная с позиции IDX. Отсчет ведется с 0 символа. |
Replace (s, s1, s2) | s - строка,
s1 - строка, s2 - строка |
Строка | Возвращает строку, образованную замещением в строке S всех встречающихся подстрок S1 на подстроки S2. |
Round (x) | x - число | Число | Ближайшее целое значение числа X. |
Sin (x) | x - число | Число | Синус угла, определяемого параметром X в радианах. |
Sqr (x) | x - число | Число | Квадрат числа X. |
Sqrt (x) | x - число | Число | Квадратный корень числа X. |
Str (x) | x - число | Строка | Принудительное преобразование числа к строке. |
Substr (s, idx, len) | s - строка,
idx - число, len - число |
Строка | Возвращает вырезанную из строки S подстроку длиной LEN, начиная с позиции IDX. Отсчет ведется с 0 символа. |
Tan (x) | x - число | Число | Тангенс угла, определяемого параметром X в радианах. |
Trim (s) | s - строка | Строка | Возвращает строку, в которой исключены начальные и конечные пробельные символы. |
TrimEnd (s) | s - строка | Строка | Возвращает строку, в которой исключены конечные пробельные символы. |
TrimStart (s) | s - строка | Строка | Возвращает строку, в которой исключены начальные пробельные символы. |
Функции для работы со значениями Дата/время, доступные для использования в составе выражений. В качестве параметра функций, ожидающих значения Дата/время, может быть передано значение типа Дата/время, либо строковое в установленном формате. Стандартным форматом представления даты в строке является формат «dd.MM.yyyy HH:mm:ss», либо любой другой, установленный в системе или упомянутый в конфигурационном файле серверного приложения.
Функция | Параметры | Тип возвращ. значения | Описание |
---|---|---|---|
Date (d) | d - дата/время или строка | Дата/время | Возвращает дату, сформированную на основе параметра (начало дня - время дня нулевое). |
DateTime ( Y[, M[, D[, H[, m[, s[, ms]]]]]] ) | Y, M, D, H, m, s, ms - числа | Дата/время | Возвращает дату/время, сформированную на основе переданных параметров, которые могут быть не указаны. Соответственно: год, месяц, день, час, минута, секунда, миллисекунда. |
DateTime (s) | s - строка | Дата/время | Принудительное преобразование строки к формату Дата/время. |
DateFormat (s, d) | s - строка
d - дата/время |
Строка | Осуществляет преобразование даты к строке с указанным стандартным форматом. Описание форматов и специальных символов можно найти на странице
http://msdn.microsoft.com/en-us/library/system.globalization.datetimeformatinfo.aspx |
DateDiff (s, d1, d2) | s - строка
d1 - дата/время d2 - дата/время |
Число | Возвращает временной интервал между двумя указанными датами, выраженный в указанных с помощью параметра s единицах:
|
DayOfWeek (d) | d - дата/время или строка | Число | День недели, которому соответствует дата-параметр (1-7). |
DayOfYear (d) | d - дата/время или строка | Число | Порядковый номер дня в году. |
Hour (d) | d - дата/время или строка | Число | Час. |
Millisecond (d) | d - дата/время или строка | Число | Миллисекунда. |
Minute (d) | d - дата/время или строка | Число | Минута. |
Month (d) | d - дата/время или строка | Число | Месяц. |
Second (d) | d - дата/время или строка | Число | Секунда. |
Year (d) | d - дата/время или строка | Число | Год. |
Специальные символы, доступные для использования в составе выражений:
Спецсимвол | Параметры | Тип возвращ. значения | Описание |
---|---|---|---|
EndLine (),
EndLine |
нет | Строка | Возвращает символ конца строки. |
Tab (),
Tab |
нет | Строка | Возвращает символ табуляции. |
Quot (),
Quot |
нет | Строка | Возвращает символ одинарной кавычки. |
DblQuot (),
DblQuot |
нет | Строка | Возвращает символ двойной кавычки. |
Константы, доступные для использования в составе выражений:
Константа | Тип возвращ. значения | Описание |
---|---|---|
Pi | Число | Число «Пи». 3,1415926... |
Fi | Число | Число «Фи». 1,6180339... |
E | Число | Число «E». 2,74182818... |
В качестве типов параметров (число и строка) указаны ожидаемые типы, в которые будет производится преобразование. Однако параметрами могут являться переменные другого типа, если они удовлетворяют Правило включения типов.
Функции без параметров можно указывать в выражении как с пустыми круглыми скобками в конце, так и без них.