Выражения и функции в Фабрике данных Azure и Azure Synapse Analytics
ОБЛАСТЬ ПРИМЕНЕНИЯ: Фабрика данных Azure Azure Synapse Analytics
Совет
Попробуйте использовать фабрику данных в Microsoft Fabric, решение для аналитики с одним интерфейсом для предприятий. Microsoft Fabric охватывает все, от перемещения данных до обработки и анализа данных в режиме реального времени, бизнес-аналитики и отчетности. Узнайте, как бесплатно запустить новую пробную версию !
В этой статье содержатся сведения о выражениях и функциях, поддерживаемых Фабрикой данных Azure и Azure Synapse Analytics.
Выражения
Значения JSON в определении могут быть литералами или выражениями, которые оцениваются в среде выполнения. Например:
"name": "value"
or
"name": "@pipeline().parameters.password"
Выражения могут встречаться в любом месте строкового значения JSON и всегда возвращают другое значение JSON. Если значение JSON является выражением, текст выражения извлекается без знака \"\@\". Если требуется строковый литерал, начинающийся с @, его необходимо экранировать с помощью @@. В примерах ниже показано, как вычисляются выражения.
Значение JSON | Результат |
---|---|
"parameters" | Возвращаются символы в виде 'parameters'. |
"parameters[1]" | Возвращаются символы в виде 'parameters[1]'. |
"@@" | Возвращается строка из 1 символа, содержащая символ \@\. |
" @" | Возвращается строка из 2 символов, содержащая символ \@\. |
Выражения также могут содержаться внутри строк, где они заключаются в структуру @{ ... }
, при использовании интерполяции строк. Например: "name" : "First Name: @{pipeline().parameters.firstName} Last Name: @{pipeline().parameters.lastName}"
При использовании интерполяции строки результатом всегда будет строка. Предположим, myNumber
определено как 42
, а myString
— как foo
:
Значение JSON | Результат |
---|---|
"@pipeline().parameters.myString" | Возвращает foo как строку. |
@{pipeline().parameters.myString} | Возвращает foo как строку. |
"@pipeline().parameters.myNumber" | Возвращает 42 как номер. |
@{pipeline().parameters.myString} | Возвращает 42 как строку. |
"Answer is: @{pipeline().parameters.myNumber}" | Возвращает строку Answer is: 42 . |
"@concat('Answer is: ', string(pipeline().parameters.myNumber))" | Возвращает строку Answer is: 42 . |
Answer is: @{pipeline().parameters.myNumber} | Возвращает строку Answer is: @{pipeline().parameters.myNumber} . |
В действиях потока управления, таких как действие ForEach, можно предоставить массив для итерации по элементам свойств и использовать @item() для итерации по одному перечислению в действии ForEach. Например, если элементы являются массивом: [1, 2, 3], @item() возвращает 1 в первой итерации, 2 во второй итерации и 3 в третьей итерации. Можно также использовать выражение наподобие @range(0,10), чтобы выполнять десять итераций, начиная с 0 и заканчивая 9.
Для записи выходных данных действия и принятия решений можно использовать @activity('activity name'). Рассмотрим веб-действие с именем Web1. Выражение для размещения выходных данных первого действия в теле второго обычно выглядит следующим образом: @activity('Web1').output или @activity('Web1').output.data, либо что-то подобное в зависимости от того, как выглядит результат первого действия.
Примеры
Пример сложных выражений
Приведенный ниже пример содержит сложное выражение, которое ссылается на глубоко вложенное поле в выходных данных действия. Чтобы создать ссылку на параметр конвейера, который вычисляет вложенное поле, используйте синтаксис [] вместо оператора точки (.) (как subfield1 и subfield2 в нашем примере) в составе выходных данных действия.
@activity('*activityName*').output.*subfield1*.*subfield2*[pipeline().parameters.*subfield3*].*subfield4*
Наиболее распространенная схема — динамическое создание файлов и их именование. Давайте изучим несколько примеров динамического именования файлов.
Добавление даты в имя файла:
@concat('Test_', formatDateTime(utcnow(), 'yyyy-dd-MM'))
Добавление даты и времени в часовой пояс клиента:
@concat('Test_', convertFromUtc(utcnow(), 'Pacific Standard Time'))
Добавление времени активации:
@concat('Test_', pipeline().TriggerTime)
Вывод пользовательского имени файла в поток данных сопоставления при отводе в один файл с датой:
'Test_' + toString(currentDate()) + '.csv'
В приведенных выше случаях создается 4 динамических имени файлов, начинающиеся с Test_.
Редактор динамического содержимого
Редактор динамического содержимого автоматически экранирует символы в содержимом после завершения редактирования. Например, следующее содержимое в редакторе —это интерполяция строк с двумя функциями выражений.
{
"type": "@{if(equals(1, 2), 'Blob', 'Table' )}",
"name": "@{toUpper('myData')}"
}
Редактор динамического содержимого преобразует вышеприведенное содержимое в выражение "{ \n \"type\": \"@{if(equals(1, 2), 'Blob', 'Table' )}\",\n \"name\": \"@{toUpper('myData')}\"\n}"
. Результатом этого выражения является строка формата JSON, показанная ниже.
{
"type": "Table",
"name": "MYDATA"
}
Набор данных с параметром
В следующем примере BlobDataset принимает параметр с именем path. Его значение используется для задания значения свойства folderPath с помощью выражения: dataset().path
.
{
"name": "BlobDataset",
"properties": {
"type": "AzureBlob",
"typeProperties": {
"folderPath": "@dataset().path"
},
"linkedServiceName": {
"referenceName": "AzureStorageLinkedService",
"type": "LinkedServiceReference"
},
"parameters": {
"path": {
"type": "String"
}
}
}
}
Конвейер с параметром
В следующем примере конвейер принимает параметры inputPath и outputPath. Путь к параметризованному набору данных большого двоичного объекта задается с помощью значений этих параметров. Синтаксис, используемый здесь: pipeline().parameters.parametername
.
{
"name": "Adfv2QuickStartPipeline",
"properties": {
"activities": [
{
"name": "CopyFromBlobToBlob",
"type": "Copy",
"inputs": [
{
"referenceName": "BlobDataset",
"parameters": {
"path": "@pipeline().parameters.inputPath"
},
"type": "DatasetReference"
}
],
"outputs": [
{
"referenceName": "BlobDataset",
"parameters": {
"path": "@pipeline().parameters.outputPath"
},
"type": "DatasetReference"
}
],
"typeProperties": {
"source": {
"type": "BlobSource"
},
"sink": {
"type": "BlobSink"
}
}
}
],
"parameters": {
"inputPath": {
"type": "String"
},
"outputPath": {
"type": "String"
}
}
}
}
Замена специальных знаков
Редактор динамического содержимого автоматически экранирует такие символы, как двойные кавычки и обратная косая черта в вашем контенте, когда вы заканчиваете редактирование. Это вызывает проблемы, если вы хотите заменить перевод строки или табуляцию с помощью \n, \t в функции replace(). Вы можете отредактировать динамический контент в представлении кода, чтобы удалить лишний \ в выражении, или вы можете выполнить следующие шаги, чтобы заменить специальные символы с помощью языка выражений:
- Кодировка URL по сравнению с исходным строковым значением
- Замените строку в кодировке URL, например перевод строки (%0A), возврат каретки (%0D), горизонтальную табуляцию (%09).
- Декодирование URL-адреса
Например, переменная companyName с символом новой строки в своем значении, выражение @uriComponentToString(replace(uriComponent(variables('companyName')), '%0A', ''))
может удалить символ новой строки.
Contoso-
Corporation
Экранирование одинарной кавычки
Функции выражений в конвейерах используют одинарный кавычки (') для окружения параметров строкового значения. Используйте два последовательных символа одной кавычки в строковом выражении конвейера, чтобы включить одинарный кавычки. Ниже приведен пример: выражение @concat('Here is a double quote character: ". ', 'And here is a single quote character all within the same string: ''.')
возвращает следующий результат:
Here is a double quote character: ". And here is a single quote character all within the same string: '.
Однако в выражениях потока данных этот синтаксис не поддерживается. Вместо этого выражения потока данных могут быть окружены одним или двойными кавычками. Заключайте текст, требующий одинарных кавычек в двойные кавычки, и текст, требующий двойных кавычки в отдельных кавычках, в строковых функциях. Если требуется строка, содержащая одинарные и двойные кавычки, можно объединить concat()
две подстроки, которые содержат одинарные кавычки или двойные кавычки. Эквивалент потока данных предыдущего примера concat('Here is a double quote character: ". ', "And here is a single quote character all within the same string: '.")
выражения конвейера. В потоке данных это выражение возвращает тот же результат, что и предыдущий пример для выражений конвейера.
Tutorial
В этом руководстве описано, как передавать параметры между конвейером и действием, а также между действиями. В этом руководстве приведены конкретные действия для Фабрики данных Azure, однако действия для рабочей области Synapse практически эквивалентны (есть лишь незначительные отличия в пользовательском интерфейсе).
Функции
Внутри выражений можно вызывать функции. В следующих разделах предоставлены сведения о функциях, которые могут использоваться в выражении.
Функции данных
Функция даты и времени | Задача |
---|---|
addDays | Добавляет количество дней к метке времени. |
addHours | Добавляет количество часов к метке времени. |
addMinutes | Добавляет количество минут к метке времени. |
addSeconds | Добавляет количество секунд к метке времени. |
addToTime | Добавляет количество единиц времени к метке времени. См. раздел getFutureTime. |
convertFromUtc | Преобразовывает метку времени формата UTC в целевой часовой пояс. |
convertTimeZone | Преобразовывает метку времени из исходного часового пояса в целевой. |
convertToUtc | Преобразует метку времени с исходным часовым поясом в формат UTC. |
dayOfMonth | Возвращает компонент дня месяца из метки времени. |
dayOfWeek | Возвращает компонент дня недели из метки времени. |
dayOfYear | Возвращает компонент дня года из метки времени. |
formatDateTime | Возвращает метку времени в виде строки в произвольном формате. |
getFutureTime | Возвращает текущую метку времени, а также указанные единицы времени. См. раздел addToTime. |
getPastTime | Возвращает текущую метку времени, вычитая указанные единицы времени. См. раздел subtractFromTime. |
startOfDay | Возвращает начало дня для метки времени. |
startOfHour | Возвращает начало часа для метки времени. |
startOfMonth | Возвращает начало месяца для метки времени. |
subtractFromTime | Вычитает количество единиц времени из метки времени. См. раздел getPastTime. |
ticks | Возвращает значение свойства ticks для указанной метки времени. |
utcNow | Возвращает текущую метку времени в виде строки. |
Строковые функции
Для работы со строками вы можете использовать эти строковые функции, а также некоторые функции для коллекций. Строковые функции работают только со строками.
Строковая функция | Задача |
---|---|
concat | Объединяет две или более строк и возвращает объединенную строку. |
endsWith | Проверяет, заканчивается ли строка определенной подстрокой. |
guid | Создает глобально уникальный идентификатор (GUID) в виде строки. |
indexOf | Возвращает начальную позицию подстроки. |
lastIndexOf | Возвращает начальную позицию последнего вхождения подстроки. |
replace | Заменяет подстроку указанной строкой и возвращает обновленную строку. |
split | Разделить строку по каждому вхождений указанного разделителя, возвращая полученные подстроки в виде элементов массива. |
startsWith | Проверяет, начинается ли строка с определенной подстроки. |
substring | Возвращает символы из строки, начиная с указанной позиции. |
toLower | Возвращает строку символов в нижнем регистре. |
toUpper | Возвращает строку символов в верхнем регистре. |
trim | Удаляет все начальные и конечные пробелы и возвращает обновленную строку. |
Функции сбора
Для работы с коллекциями, обычно массивами, строками, а иногда и словарями, вы можете использовать следующие функции.
Функция для коллекций | Задача |
---|---|
contains | Проверяет наличие определенного элемента в коллекции. |
empty | Проверяет, является ли коллекция пустой. |
first | Возвращает первый элемент из коллекции. |
intersection | Возвращает коллекцию, которая содержит только общие элементы в указанных коллекциях. |
join | Возвращает строку, содержащую все элементы из массива, в которой каждый символ отделен разделителем. |
last | Возвращает последний элемент из коллекции. |
length | Возвращает число элементов в строке или массиве. |
skip | Удаляет элементы из начала коллекции и возвращает все другие элементы. |
take | Возвращает элементы, расположенные в начале коллекции. |
union | Возвращает коллекцию, которая содержит все элементы из указанных коллекций. |
Логические функции
Эти функции подходят для условий и могут использоваться для определения логики любого типа.
Функция логического сравнения | Задача |
---|---|
and | Проверяет, истинны ли все выражения. |
equals | Проверяет, эквивалентны ли оба значения. |
greater | Проверяет, является ли первое значение большим, чем второе. |
greaterOrEquals | Проверяет, является ли первое значение большим, чем второе, или равным ему. |
if | Проверьте, какое значение имеет выражение: true или false. Возвращает указанное значение на основе результата. |
less | Проверяет, является ли первое значение меньшим, чем второе. |
lessOrEquals | Проверяет, является ли первое значение меньшим, чем второе, или равным ему. |
не | Проверяет, имеет ли выражение значение false. |
or | Проверяет, является ли хотя бы одно выражение истинным. |
Функции преобразования
Эти функции используются для преобразования между собственными типами языка:
- строка
- integer
- с плавающей запятой
- boolean
- массивы
- dictionaries;
Функция преобразования | Задача |
---|---|
array. | Возвращает массив из одного экземпляра указанных входных данных. Для использования нескольких входных данных см. раздел createArray. |
base64 | Возвращает версию строки с кодировкой base64 для заданной строки. |
base64ToBinary | Возвращает двоичную версию строки с кодировкой base64. |
base64ToString | Возвращает строковую версию строки с кодировкой base64. |
binary | Возвращает двоичную версию входного значения. |
bool | Возвращает логическую версию входного значения. |
coalesce | Возвращает первое ненулевое значение из одного или нескольких параметров. |
createArray | Возвращает массив из нескольких экземпляров входных данных. |
dataUri | Возвращает URI данных входного значения. |
dataUriToBinary | Возвращает двоичную версию строки URI данных. |
dataUriToString | Возвращает строковую версию URI данных. |
decodeBase64 | Возвращает строковую версию строки с кодировкой base64. |
decodeDataUri | Возвращает двоичную версию строки URI данных. |
decodeUriComponent | Возвращает строку, которая заменяет escape-символы декодированными версиями. |
encodeUriComponent | Возвращает строку, которая заменяет символы, опасные для URL-адреса, escape-символами. |
float | Возвращает значение с плавающей запятой в качестве входного значения. |
int | Возвращает целочисленную версию строки. |
json | Возвращает значение типа JSON либо объект для строки или XML. |
string | Возвращает строковую версию входного значения. |
uriComponent | Возвращает кодированную версию URI для входного значения, заменив символы, опасные для URL-адреса, на escape-символы. |
uriComponentToBinary | Возвращает двоичную версию строки с закодированным URI. |
uriComponentToString | Возвращает строковую версию строки с закодированным URI. |
xml | Возвращает XML-версию строки. |
xpath | Проверяет XML на наличие узлов или значений, которые соответствуют выражению XPath, и возвращает соответствующие узлы или значения. |
Математические функции
Эти функции могут использоваться для любого типа чисел: целых чисел и чисел с плавающей запятой.
Математическая функция | Задача |
---|---|
добавление | Возвращает результат сложения двух чисел. |
div | Возвращает результат от деления одного числа на другое число. |
max | Возвращает наибольшее значение из набора чисел или массива. |
min | Возвращает наименьшее значение из набора чисел или массива. |
mod (модуль) | Верните оставшуюся часть из деления одного числа на другое число. |
mul | Возвращает результат умножения двух чисел. |
rand | Возвращает случайное целое число из указанного диапазона. |
range | Возвращает массив целых чисел, который начинается с заданного целого числа. |
sub | Возвращает результат вычитания одного числа из другого числа. |
Справочник по функциям
В этом разделе перечислены все доступные функции в алфавитном порядке.
add
Возвращает результат сложения двух чисел.
add(<summand_1>, <summand_2>)
Параметр | Обязательное поле | Type | Описание |
---|---|---|---|
<summand_1>, <summand_2> | Да | Целое число, число с плавающей запятой или смешанного типа | Числа для добавления |
Возвращаемое значение | Тип | Описание |
---|---|---|
<итоговая_сумма> | Целое число и число с плавающей запятой | Возвращает результат сложения указанных чисел |
Пример
В этом примере добавляются указанные числа:
add(1, 1.5)
Возвращается такой результат: 2.5
addDays
Добавляет количество дней к метке времени.
addDays('<timestamp>', <days>, '<format>'?)
Параметр | Обязательное поле | Type | Описание |
---|---|---|---|
<timestamp> | Да | Строка | Строка, содержащая метку времени |
<days> | Да | Целое | Положительное или отрицательное число дней для добавления |
<format> | Нет | Строка | Либо один описатель формата, либо пользовательский шаблон формата. Формат по умолчанию для метки времени — "o" (ГГГГ-ММ-ДДTЧЧ:ММ:СС), который соответствует ISO 8601 и сохраняет информацию о часовом поясе. |
Возвращаемое значение | Тип | Описание |
---|---|---|
<обновленная_метка_времени> | Строка | Метка времени и указанное число дней |
Пример 1
В этом примере к указанной метке времени добавляются 10 дней:
addDays('2018-03-15T13:00:00Z', 10)
Возвращается такой результат: "2018-03-25T00:00:0000000Z"
Пример 2
В этом примере от указанной метки времени отнимается пять дней:
addDays('2018-03-15T00:00:00Z', -5)
Возвращается такой результат: "2018-03-10T00:00:0000000Z"
addHours
Добавляет количество часов к метке времени.
addHours('<timestamp>', <hours>, '<format>'?)
Параметр | Обязательное поле | Type | Описание |
---|---|---|---|
<timestamp> | Да | Строка | Строка, содержащая метку времени |
<hour>s | Да | Целое | Положительное или отрицательное число часов для добавления |
<format> | Нет | Строка | Либо один описатель формата, либо пользовательский шаблон формата. Формат по умолчанию для метки времени — "o" (ГГГГ-ММ-ДДTЧЧ:ММ:СС), который соответствует ISO 8601 и сохраняет информацию о часовом поясе. |
Возвращаемое значение | Тип | Описание |
---|---|---|
<обновленная_метка_времени> | Строка | Метка времени и указанное число часов |
Пример 1
В этом примере к указанной метке времени добавляется 10 часов:
addHours('2018-03-15T00:00:00Z', 10)
Возвращается такой результат: "2018-03-15T10:00:0000000Z"
Пример 2
В этом примере от указанной метки времени отнимается пять часов:
addHours('2018-03-15T15:00:00Z', -5)
Возвращается такой результат: "2018-03-15T10:00:0000000Z"
addMinutes
Добавляет количество минут к метке времени.
addMinutes('<timestamp>', <minutes>, '<format>'?)
Параметр | Обязательное поле | Type | Описание |
---|---|---|---|
<timestamp> | Да | Строка | Строка, содержащая метку времени |
<minutes> | Да | Целое | Положительное или отрицательное число минут для добавления |
<format> | Нет | Строка | Либо один описатель формата, либо пользовательский шаблон формата. Формат по умолчанию для метки времени — "o" (ГГГГ-ММ-ДДTЧЧ:ММ:СС), который соответствует ISO 8601 и сохраняет информацию о часовом поясе. |
Возвращаемое значение | Тип | Описание |
---|---|---|
<обновленная_метка_времени> | Строка | Метка времени и указанное число минут |
Пример 1
В этом примере к указанной метке времени добавляется 10 минут:
addMinutes('2018-03-15T00:10:00Z', 10)
Возвращается такой результат: "2018-03-15T00:20:00.0000000Z"
Пример 2
В этом примере от указанной метки времени отнимается пять минут:
addMinutes('2018-03-15T00:20:00Z', -5)
Возвращается такой результат: "2018-03-15T00:15:00.0000000Z"
addSeconds
Добавляет количество секунд к метке времени.
addSeconds('<timestamp>', <seconds>, '<format>'?)
Параметр | Обязательное поле | Type | Описание |
---|---|---|---|
<timestamp> | Да | Строка | Строка, содержащая метку времени |
<seconds> | Да | Целое | Положительное или отрицательное число секунд для добавления |
<format> | Нет | Строка | Либо один описатель формата, либо пользовательский шаблон формата. Формат по умолчанию для метки времени — "o" (ГГГГ-ММ-ДДTЧЧ:ММ:СС), который соответствует ISO 8601 и сохраняет информацию о часовом поясе. |
Возвращаемое значение | Тип | Описание |
---|---|---|
<обновленная_метка_времени> | Строка | Метка времени и указанное число секунд |
Пример 1
В этом примере к указанной метке времени добавляется 10 секунд:
addSeconds('2018-03-15T00:00:00Z', 10)
Возвращается такой результат: "2018-03-15T00:00:10.0000000Z"
Пример 2
В этом примере от указанной метки времени отнимается пять секунд:
addSeconds('2018-03-15T00:00:30Z', -5)
Возвращается такой результат: "2018-03-15T00:00:25.0000000Z"
addToTime
Добавляет количество единиц времени к метке времени. См. раздел getFutureTime().
addToTime('<timestamp>', <interval>, '<timeUnit>', '<format>'?)
Параметр | Обязательное поле | Type | Описание |
---|---|---|---|
<timestamp> | Да | Строка | Строка, содержащая метку времени |
<interval> | Да | Целое | Число единиц времени для добавления |
<timeUnit> | Да | Строка | Единицы времени для использования с интервалом: "секунда", "минута", "час", "день", "неделя", "месяц", "год" |
<format> | Нет | Строка | Либо один описатель формата, либо пользовательский шаблон формата. Формат по умолчанию для метки времени — "o" (ГГГГ-ММ-ДДTЧЧ:ММ:СС), который соответствует ISO 8601 и сохраняет информацию о часовом поясе. |
Возвращаемое значение | Тип | Описание |
---|---|---|
<обновленная_метка_времени> | Строка | Метка времени и указанное число единиц времени |
Пример 1
В этом примере к указанной метке времени добавляется 1 день:
addToTime('2018-01-01T00:00:00Z', 1, 'Day')
Возвращается такой результат: "2018-01-02T00:00:00.0000000Z"
Пример 2
В этом примере к указанной метке времени добавляется 1 день:
addToTime('2018-01-01T00:00:00Z', 1, 'Day', 'D')
И возвращается результат с использованием необязательного формата "D": "Tuesday, January 2, 2018"
and
Проверяет, истинны ли все выражения. Возвращает значение true, если оба выражения истинны, и false, если хотя бы одно выражение ложно.
and(<expression1>, <expression2>)
Параметр | Обязательное поле | Type | Описание |
---|---|---|---|
<expression1>, <expression2> | Да | Логический | Выражения, которые следует проверить |
Возвращаемое значение | Тип | Описание |
---|---|---|
true или false | Логический | Возвращает значение true, если оба выражения истинны. Возвращает значение false, если хотя бы одно выражение имеет значение false. |
Пример 1
В этих примерах проверяется, оба ли указанные логические значения истинны:
and(true, true)
and(false, true)
and(false, false)
И возвращаются следующие результаты:
- В первом примере оба выражения условия выполнены, поэтому возвращается
true
. - Во втором примере одно из выражений имеет значение false, поэтому возвращается
false
. - В третьем примере оба выражения имеют значения false, поэтому возвращается
false
.
Пример 2
В этих примерах проверяется, оба ли указанные выражения истинны:
and(equals(1, 1), equals(2, 2))
and(equals(1, 1), equals(1, 2))
and(equals(1, 2), equals(1, 3))
И возвращаются следующие результаты:
- В первом примере оба выражения условия выполнены, поэтому возвращается
true
. - Во втором примере одно из выражений имеет значение false, поэтому возвращается
false
. - В третьем примере оба выражения имеют значения false, поэтому возвращается
false
.
array
Возвращает массив из одного экземпляра указанных входных данных. Для использования нескольких входных данных см. раздел createArray().
array('<value>')
Параметр | Обязательное поле | Type | Описание |
---|---|---|---|
<значение> | Да | Строка | Строка для создания массива |
Возвращаемое значение | Тип | Описание |
---|---|---|
[<value>] | Массив | Массив, содержащий один экземпляр указанных входных данных |
Пример
В этом примере создается массив из строки "hello":
array('hello')
Возвращается такой результат: ["hello"]
base64
Возвращает версию строки с кодировкой base64 для заданной строки.
base64('<value>')
Параметр | Обязательное поле | Type | Описание |
---|---|---|---|
<значение> | Да | Строка | Строка входных данных |
Возвращаемое значение | Тип | Описание |
---|---|---|
<строка_base64> | Строка | Версия строки входных данных с кодировкой base64 |
Пример
В этом примере строка "hello" преобразуется в строку с кодировкой base64:
base64('hello')
Возвращается такой результат: "aGVsbG8="
base64ToBinary
Возвращает двоичную версию строки с кодировкой base64.
base64ToBinary('<value>')
Параметр | Обязательное поле | Type | Описание |
---|---|---|---|
<значение> | Да | Строка | Преобразуемая строка с кодировкой base64 |
Возвращаемое значение | Тип | Описание |
---|---|---|
<двоичная версия для строки base64> | Строка | Двоичная версия строки с кодировкой base64 |
Пример
В этом примере строка "aGVsbG8=" в кодировке base64 преобразуется в двоичную строку:
base64ToBinary('aGVsbG8=')
Возвращается такой результат:
"0110000101000111010101100111001101100010010001110011100000111101"
base64ToString
Возвращает декодированную версию строки с кодировкой base64.
Используйте эту функцию вместо decodeBase64().
Хотя обе функции работают одинаково, base64ToString()
является предпочтительной.
base64ToString('<value>')
Параметр | Обязательное поле | Type | Описание |
---|---|---|---|
<значение> | Да | Строка | Декодируемая строка с кодировкой base64. |
Возвращаемое значение | Тип | Описание |
---|---|---|
<декодированная строка base64> | Строка | Строковая версия строки с кодировкой base64 |
Пример
В этом примере строка "aGVsbG8=" в кодировке base64 преобразуется в простую строку:
base64ToString('aGVsbG8=')
Возвращается такой результат: "hello"
binary
Возвращает двоичную версию строки.
binary('<value>')
Параметр | Обязательное поле | Type | Описание |
---|---|---|---|
<значение> | Да | Строка | Преобразуемая строка |
Возвращаемое значение | Тип | Описание |
---|---|---|
<двоичная форма входного значения> | Строка | Двоичная версия указанной строки |
Пример
В этом примере строка "hello" преобразуется в двоичную строку:
binary('hello')
Возвращается такой результат:
"0110100001100101011011000110110001101111"
bool
Возвращает логическую версию значения.
bool(<value>)
Параметр | Обязательное поле | Type | Описание |
---|---|---|---|
<значение> | Да | Любое | Значение, которое необходимо преобразовать |
Возвращаемое значение | Тип | Описание |
---|---|---|
true или false | Логический | Логическая версия указанного значения |
Пример
В этих примерах указанные значения преобразуются в логические:
bool(1)
bool(0)
И возвращаются следующие результаты:
- Первый пример:
true
. - Второй пример:
false
.
coalesce
Возвращает первое ненулевое значение из одного или нескольких параметров. Пустые строки, пустые массивы и пустые объекты не имеют значение null.
coalesce(<object_1>, <object_2>, ...)
Параметр | Обязательное поле | Type | Описание |
---|---|---|---|
<object_1>, <object_2>, ... | Да | Любой, могут быть разные типы | Один или несколько элементов для проверки на наличие значения NULL |
Возвращаемое значение | Тип | Описание |
---|---|---|
<первый не нулевой элемент> | Любое | Первый элемент или значение, которое не равно NULL. Если все параметры равны NULL, эта функция возвращает значение NULL. |
Пример
Эти примеры возвращают первое значение, не равное NULL, из указанных значений или равное NULL, когда все значения равны NULL:
coalesce(null, true, false)
coalesce(null, 'hello', 'world')
coalesce(null, null, null)
И возвращаются следующие результаты:
- Первый пример:
true
. - Второй пример:
"hello"
. - Третий пример:
null
.
concat
Объединяет две или более строк и возвращает объединенную строку.
concat('<text1>', '<text2>', ...)
Параметр | Обязательное поле | Type | Описание |
---|---|---|---|
<text1>, <text2>, ... | Да | Строка | По крайней мере две строки для объединения |
Возвращаемое значение | Тип | Описание |
---|---|---|
<текст1текст2...> | Строка | Строка, созданная из объединенных входных строк |
Пример
В этом примере объединяются строки "Hello" и "World":
concat('Hello', 'World')
Возвращается такой результат: "HelloWorld"
contains
Проверяет наличие определенного элемента в коллекции. Возвращает true, когда элемент найден, и false, когда не найден. Эта функция учитывает регистр.
contains('<collection>', '<value>')
contains([<collection>], '<value>')
В частности, эта функция работает с такими типами коллекций:
- строка, чтобы найти подстроку.;
- массив, чтобы найти значение;
- словарь, чтобы найти ключ.
Параметр | Обязательное поле | Type | Описание |
---|---|---|---|
<collection> | Да | Строка, массив или словарь | Коллекция для проверки |
<значение> | Да | Строка, массив или словарь соответственно | Искомый элемент |
Возвращаемое значение | Тип | Описание |
---|---|---|
true или false | Логический | Возвращает true, если элемент найден. В противном случае возвращает значение false. |
Пример 1
В этом примере строка "hello world" проверяется на наличие подстроки "world" и возвращается значение true:
contains('hello world', 'world')
Пример 2
В этом примере строка "hello world" проверяется на наличие подстроки "universe" и возвращается значение false:
contains('hello world', 'universe')
convertFromUtc
Преобразовывает метку времени формата UTC в целевой часовой пояс.
convertFromUtc('<timestamp>', '<destinationTimeZone>', '<format>'?)
Параметр | Обязательное поле | Type | Описание |
---|---|---|---|
<timestamp> | Да | Строка | Строка, содержащая метку времени |
<destinationTimeZone> | Да | Строка | Имя целевого часового пояса. Имена часовых поясов см. в разделе Значения часовых поясов Майкрософт, но может потребоваться удалить все знаки препинания из имени часового пояса. |
<format> | Нет | Строка | Либо один описатель формата, либо пользовательский шаблон формата. Формат по умолчанию для метки времени — "o" (ГГГГ-ММ-ДДTЧЧ:ММ:СС), который соответствует ISO 8601 и сохраняет информацию о часовом поясе. |
Возвращаемое значение | Тип | Описание |
---|---|---|
<преобразованная метка времени> | Строка | Метка времени, преобразованная в целевой часовой пояс |
Пример 1
В этом примере метка времени преобразуется в указанный часовой пояс:
convertFromUtc('2018-01-01T08:00:00.0000000Z', 'Pacific Standard Time')
Возвращается такой результат: "2018-01-01T00:00:00Z"
Пример 2
В этом примере метка времени преобразуется в указанный часовой пояс и формат:
convertFromUtc('2018-01-01T08:00:00.0000000Z', 'Pacific Standard Time', 'D')
Возвращается такой результат: "Monday, January 1, 2018"
convertTimeZone
Преобразовывает метку времени из исходного часового пояса в целевой.
convertTimeZone('<timestamp>', '<sourceTimeZone>', '<destinationTimeZone>', '<format>'?)
Параметр | Обязательное поле | Type | Описание |
---|---|---|---|
<timestamp> | Да | Строка | Строка, содержащая метку времени |
<sourceTimeZone> | Да | Строка | Имя исходного часового пояса. Имена часовых поясов см. в разделе Значения часовых поясов Майкрософт, но может потребоваться удалить все знаки препинания из имени часового пояса. |
<destinationTimeZone> | Да | Строка | Имя целевого часового пояса. Имена часовых поясов см. в разделе Значения часовых поясов Майкрософт, но может потребоваться удалить все знаки препинания из имени часового пояса. |
<format> | Нет | Строка | Либо один описатель формата, либо пользовательский шаблон формата. Формат по умолчанию для метки времени — "o" (ГГГГ-ММ-ДДTЧЧ:ММ:СС), который соответствует ISO 8601 и сохраняет информацию о часовом поясе. |
Возвращаемое значение | Тип | Описание |
---|---|---|
<преобразованная метка времени> | Строка | Метка времени, преобразованная в целевой часовой пояс |
Пример 1
В этом примере исходный часовой пояс преобразуется в целевой:
convertTimeZone('2018-01-01T08:00:00.0000000Z', 'UTC', 'Pacific Standard Time')
Возвращается такой результат: "2018-01-01T00:00:00.0000000"
Пример 2
В этом примере часовой пояс преобразуется в указанный часовой пояс и формат:
convertTimeZone('2018-01-01T08:00:00.0000000Z', 'UTC', 'Pacific Standard Time', 'D')
Возвращается такой результат: "Monday, January 1, 2018"
convertToUtc
Преобразует метку времени с исходным часовым поясом в формат UTC.
convertToUtc('<timestamp>', '<sourceTimeZone>', '<format>'?)
Параметр | Обязательное поле | Type | Описание |
---|---|---|---|
<timestamp> | Да | Строка | Строка, содержащая метку времени |
<sourceTimeZone> | Да | Строка | Имя исходного часового пояса. Имена часовых поясов см. в разделе Значения часовых поясов Майкрософт, но может потребоваться удалить все знаки препинания из имени часового пояса. |
<format> | Нет | Строка | Либо один описатель формата, либо пользовательский шаблон формата. Формат по умолчанию для метки времени — "o" (ГГГГ-ММ-ДДTЧЧ:ММ:СС), который соответствует ISO 8601 и сохраняет информацию о часовом поясе. |
Возвращаемое значение | Тип | Описание |
---|---|---|
<преобразованная метка времени> | Строка | Метка времени, которая преобразуются в формат UTC |
Пример 1
В этом примере метка времени преобразуется в формат UTC:
convertToUtc('01/01/2018 00:00:00', 'Pacific Standard Time')
Возвращается такой результат: "2018-01-01T08:00:00.0000000Z"
Пример 2
В этом примере метка времени преобразуется в формат UTC:
convertToUtc('01/01/2018 00:00:00', 'Pacific Standard Time', 'D')
Возвращается такой результат: "Monday, January 1, 2018"
createArray
Возвращает массив из нескольких экземпляров входных данных. Массивы из одного экземпляра входных данных см. в разделе array().
createArray('<object1>', '<object2>', ...)
Параметр | Обязательное поле | Type | Описание |
---|---|---|---|
<object1>, <object2>, ... | Да | Любой, но не смешанный | По крайней мере два элемента для создания массива |
Возвращаемое значение | Тип | Описание |
---|---|---|
[<object1>, <object2>, ...] | Массив | Массив, созданный из всех входных элементов |
Пример
В этом примере создается массив из этих входных элементов:
createArray('h', 'e', 'l', 'l', 'o')
Возвращается такой результат: ["h", "e", "l", "l", "o"]
dataUri
Возвращает URI данных для строки.
dataUri('<value>')
Параметр | Обязательное поле | Type | Описание |
---|---|---|---|
<значение> | Да | Строка | Преобразуемая строка |
Возвращаемое значение | Тип | Описание |
---|---|---|
<URI данных> | Строка | URI данных для входной строки |
Пример
В этом примере создается URI данных для строки "hello":
dataUri('hello')
Возвращается такой результат: "data:text/plain;charset=utf-8;base64,aGVsbG8="
dataUriToBinary
Возвращает двоичную версию URI данных.
Используйте эту функцию вместо decodeDataUri().
Хотя обе функции работают одинаково, dataUriBinary()
является предпочтительной.
dataUriToBinary('<value>')
Параметр | Обязательное поле | Type | Описание |
---|---|---|---|
<значение> | Да | Строка | URI данных для преобразования |
Возвращаемое значение | Тип | Описание |
---|---|---|
<двоичная версия URI данных> | Строка | Двоичная версия URI данных |
Пример
В этом примере создается двоичная версия этого URI данных:
dataUriToBinary('data:text/plain;charset=utf-8;base64,aGVsbG8=')
Возвращается такой результат:
"01100100011000010111010001100001001110100111010001100101011110000111010000101111011100000 1101100011000010110100101101110001110110110001101101000011000010111001001110011011001010111 0100001111010111010101110100011001100010110100111000001110110110001001100001011100110110010 10011011000110100001011000110000101000111010101100111001101100010010001110011100000111101"
dataUriToString
Возвращает строковую версию URI данных.
dataUriToString('<value>')
Параметр | Обязательное поле | Type | Описание |
---|---|---|---|
<значение> | Да | Строка | URI данных для преобразования |
Возвращаемое значение | Тип | Описание |
---|---|---|
<строка URI данных> | Строка | Строковая версия URI данных |
Пример
В этом примере создается строка этого URI данных:
dataUriToString('data:text/plain;charset=utf-8;base64,aGVsbG8=')
Возвращается такой результат: "hello"
dayOfMonth
Возвращает день месяца из метки времени.
dayOfMonth('<timestamp>')
Параметр | Обязательное поле | Type | Описание |
---|---|---|---|
<timestamp> | Да | Строка | Строка, содержащая метку времени |
Возвращаемое значение | Тип | Описание |
---|---|---|
<день месяца> | Целое | День месяца из указанной метки времени |
Пример
В этом примере возвращается число дня месяца из этой метки времени:
dayOfMonth('2018-03-15T13:27:36Z')
Возвращается такой результат: 15
dayOfWeek
Возвращает день недели из метки времени.
dayOfWeek('<timestamp>')
Параметр | Обязательное поле | Type | Описание |
---|---|---|---|
<timestamp> | Да | Строка | Строка, содержащая метку времени |
Возвращаемое значение | Тип | Описание |
---|---|---|
<день недели> | Целое | День недели из указанной метки времени, где воскресенье имеет значение 0, понедельник — 1 и т. д. |
Пример
В этом примере возвращается номер дня недели из этой метки времени:
dayOfWeek('2018-03-15T13:27:36Z')
Возвращается такой результат: 3
dayOfYear
Возвращает день года из метки времени.
dayOfYear('<timestamp>')
Параметр | Обязательное поле | Type | Описание |
---|---|---|---|
<timestamp> | Да | Строка | Строка, содержащая метку времени |
Возвращаемое значение | Тип | Описание |
---|---|---|
<день года> | Целое | День года из указанной метки времени |
Пример
В этом примере возвращается число дня года из этой метки времени:
dayOfYear('2018-03-15T13:27:36Z')
Возвращается такой результат: 74
decodeBase64
Возвращает декодированную версию строки с кодировкой base64.
Используйте base64ToString() вместо decodeBase64()
.
Хотя обе функции работают одинаково, base64ToString()
является предпочтительной.
decodeBase64('<value>')
Параметр | Обязательное поле | Type | Описание |
---|---|---|---|
<значение> | Да | Строка | Декодируемая строка с кодировкой base64. |
Возвращаемое значение | Тип | Описание |
---|---|---|
<декодированная строка base64> | Строка | Строковая версия строки с кодировкой base64 |
Пример
В этом примере создается строка для строки с кодировкой base64:
decodeBase64('aGVsbG8=')
Возвращается такой результат: "hello"
decodeDataUri
Возвращает двоичную версию URI данных.
Используйте dataUriToBinary() вместо decodeDataUri()
.
Хотя обе функции работают одинаково, dataUriToBinary()
является предпочтительной.
decodeDataUri('<value>')
Параметр | Обязательное поле | Type | Описание |
---|---|---|---|
<значение> | Да | Строка | Декодируемая строка URI данных |
Возвращаемое значение | Тип | Описание |
---|---|---|
<двоичная версия URI данных> | Строка | Двоичная версия строки URI данных |
Пример
В этом примере возвращается двоичная версия этого URI данных:
decodeDataUri('data:text/plain;charset=utf-8;base64,aGVsbG8=')
Возвращается такой результат:
"01100100011000010111010001100001001110100111010001100101011110000111010000101111011100000 1101100011000010110100101101110001110110110001101101000011000010111001001110011011001010111 0100001111010111010101110100011001100010110100111000001110110110001001100001011100110110010 10011011000110100001011000110000101000111010101100111001101100010010001110011100000111101"
decodeUriComponent
Возвращает строку, которая заменяет escape-символы декодированными версиями.
decodeUriComponent('<value>')
Параметр | Обязательное поле | Type | Описание |
---|---|---|---|
<значение> | Да | Строка | Строка с декодируемыми escape-символами |
Возвращаемое значение | Тип | Описание |
---|---|---|
<декодированный URI> | Строка | Обновленная строка с декодированными escape-символами |
Пример
В этом примере escape-символы в этой строке заменяются декодированными версиями:
decodeUriComponent('http%3A%2F%2Fcontoso.com')
Возвращается такой результат: "https://contoso.com"
div
Возвращает результат деления одного числа на другое число.
div(<dividend>, <divisor>)
Точный тип возвращаемого значения функции зависит от типов его параметров. Дополнительные сведения см. в примерах.
Параметр | Обязательное поле | Type | Описание |
---|---|---|---|
<dividend> | Да | Целое число и число с плавающей запятой | Число, которое нужно поделить на делитель |
<divisor> | Да | Целое число и число с плавающей запятой | Число, на которое делится делимое. Значение делителя равно нулю приводит к ошибке во время выполнения. |
Возвращаемое значение | Тип | Описание |
---|---|---|
<результат деления> | Целое число и число с плавающей запятой | Результат деления первого числа на второй номер |
Пример 1
В этих примерах число 9 делится на 2:
div(9, 2.0)
div(9.0, 2)
div(9.0, 2.0)
И все возвращают этот результат: 4.5
Пример 2
В этом примере также делится число 9 на 2, но так как оба параметра являются целыми числами, остальные отбрасываются (целочисленное деление):
div(9, 2)
Выражение возвращает результат 4
. Чтобы получить значение оставшейся части, используйте функцию mod( ).
encodeUriComponent
Возвращает кодированную версию URI для строки, заменив символы, опасные для URL-адреса, на escape-символы.
Используйте uriComponent() вместо encodeUriComponent()
.
Хотя обе функции работают одинаково, uriComponent()
является предпочтительной.
encodeUriComponent('<value>')
Параметр | Обязательное поле | Type | Описание |
---|---|---|---|
<значение> | Да | Строка | Строка для преобразования в формат закодированного URI |
Возвращаемое значение | Тип | Описание |
---|---|---|
<закодированный URI> | Строка | Строка с закодированным URI, содержащая escape-символы |
Пример
В этом примере создается версия с закодированным URI для этой строки:
encodeUriComponent('https://contoso.com')
Возвращается такой результат: "http%3A%2F%2Fcontoso.com"
empty
Проверяет, является ли коллекция пустой. Возвращает значение true, если коллекция пуста, или false, если нет.
empty('<collection>')
empty([<collection>])
Параметр | Обязательное поле | Type | Описание |
---|---|---|---|
<collection> | Да | Строка, массив или объект | Коллекция для проверки |
Возвращаемое значение | Тип | Описание |
---|---|---|
true или false | Логический | Возвращает значение true, если коллекция пуста. В противном случае возвращает значение false. |
Пример
В этих примерах проверяется, являются ли указанные коллекции пустыми:
empty('')
empty('abc')
И возвращаются следующие результаты:
- В первом примере передается пустая строка, поэтому функция возвращает
true
. - Во втором примере передается строка "abc", поэтому функция возвращает
false
.
endsWith
Проверяет, заканчивается ли строка определенной подстрокой. Возвращает true, если подстрока найдена, или возвращает false, если нет. Эта функция не учитывает регистр.
endsWith('<text>', '<searchText>')
Параметр | Обязательное поле | Type | Описание |
---|---|---|---|
<text> | Да | Строка | Проверяемая строка |
<searchText> | Да | Строка | Конечная подстрока для поиска |
Возвращаемое значение | Тип | Описание |
---|---|---|
true или false | Логический | Возвращает значение true, если конечная подстрока обнаружена. В противном случае возвращает значение false. |
Пример 1
В этом примере проверяется, заканчивается ли строка "hello world" строкой "world":
endsWith('hello world', 'world')
Возвращается такой результат: true
Пример 2
В этом примере проверяется, заканчивается ли строка "hello world" строкой "universe":
endsWith('hello world', 'universe')
Возвращается такой результат: false
equals
Проверяет, эквивалентны ли оба значения, выражения или объекта. Возвращается значение true, если они эквивалентны, или false, если нет.
equals('<object1>', '<object2>')
Параметр | Обязательное поле | Type | Описание |
---|---|---|---|
<object1>, <object2> | Да | Various | Значения, выражения или объекты для сравнения |
Возвращаемое значение | Тип | Описание |
---|---|---|
true или false | Логический | Возвращает значение true, если оба значения эквивалентны. В противном случае возвращает значение false. |
Пример
В этих примерах проверяется, являются ли указанные входные данные эквивалентными.
equals(true, 1)
equals('abc', 'abcd')
И возвращаются следующие результаты:
- В первом примере оба значения эквивалентны, поэтому функция возвращает
true
. - Во втором примере оба значения не эквивалентны, поэтому функция возвращает
false
.
first
Возвращает первый элемент из строки или массива.
first('<collection>')
first([<collection>])
Параметр | Обязательное поле | Type | Описание |
---|---|---|---|
<collection> | Да | Строка или массив | Коллекция, где нужно найти первый элемент. |
Возвращаемое значение | Тип | Описание |
---|---|---|
<первый элемент коллекции> | Любое | Первый элемент в коллекции |
Пример
В этих примерах выполняется поиск первого элемента в этих коллекциях:
first('hello')
first(createArray(0, 1, 2))
И возвращаются следующие результаты:
- Первый пример:
"h"
. - Второй пример:
0
.
float
Преобразует строковую версию числа с плавающей запятой в фактическое число с плавающей запятой.
float('<value>')
Параметр | Обязательное поле | Type | Описание |
---|---|---|---|
<значение> | Да | Строка | Строка с допустимым числом с плавающей запятой, которую нужно преобразовать |
Возвращаемое значение | Тип | Описание |
---|---|---|
<значение с плавающей запятой> | Тип с плавающей запятой | Число с плавающей запятой для указанной строки |
Пример
В этом примере создается строковая версия для этого числа с плавающей запятой:
float('10.333')
Возвращается такой результат: 10.333
formatDateTime
Возвращает метку времени в указанном формате.
formatDateTime('<timestamp>', '<format>'?)
Параметр | Обязательное поле | Type | Описание |
---|---|---|---|
<timestamp> | Да | Строка | Строка, содержащая метку времени |
<format> | Нет | Строка | Либо один описатель формата, либо пользовательский шаблон формата. Формат по умолчанию для метки времени — "o" (ГГГГ-ММ-ДДTЧЧ:ММ:СС), который соответствует ISO 8601 и сохраняет информацию о часовом поясе. |
Возвращаемое значение | Тип | Описание |
---|---|---|
<метка времени в другом формате> | Строка | Обновленная метка времени в указанном формате |
Пример
В этом примере метка времени преобразуется в указанный формат:
formatDateTime('03/15/2018 12:00:00', 'yyyy-MM-ddTHH:mm:ss')
Возвращается такой результат: "2018-03-15T12:00:00"
getFutureTime
Возвращает текущую метку времени, а также указанные единицы времени.
getFutureTime(<interval>, <timeUnit>, <format>?)
Параметр | Обязательное поле | Type | Описание |
---|---|---|---|
<interval> | Да | Целое | Число единиц времени для добавления |
<timeUnit> | Да | Строка | Единицы времени для использования с интервалом: "секунда", "минута", "час", "день", "неделя", "месяц", "год" |
<format> | Нет | Строка | Либо один описатель формата, либо пользовательский шаблон формата. Формат по умолчанию для метки времени — "o" (ГГГГ-ММ-ДДTЧЧ:ММ:СС), который соответствует ISO 8601 и сохраняет информацию о часовом поясе. |
Возвращаемое значение | Тип | Описание |
---|---|---|
<обновленная_метка_времени> | Строка | Текущая метка времени и указанное число единиц времени |
Пример 1
Допустим, текущая метка времени такая: "2018-03-01T00:00:00.0000000Z". В этом примере к этой метке времени добавляется пять дней:
getFutureTime(5, 'Day')
Возвращается такой результат: "2018-03-06T00:00:00.0000000Z"
Пример 2
Допустим, текущая метка времени такая: "2018-03-01T00:00:00.0000000Z". В этом примере добавляется пять дней и результат преобразуется в формат "D":
getFutureTime(5, 'Day', 'D')
Возвращается такой результат: "Tuesday, March 6, 2018"
getPastTime
Возвращает текущую метку времени, вычитая указанные единицы времени.
getPastTime(<interval>, <timeUnit>, <format>?)
Параметр | Обязательное поле | Type | Описание |
---|---|---|---|
<interval> | Да | Целое | Число единиц времени для вычитания |
<timeUnit> | Да | Строка | Единицы времени для использования с интервалом: "секунда", "минута", "час", "день", "неделя", "месяц", "год" |
<format> | Нет | Строка | Либо один описатель формата, либо пользовательский шаблон формата. Формат по умолчанию для метки времени — "o" (ГГГГ-ММ-ДДTЧЧ:ММ:СС), который соответствует ISO 8601 и сохраняет информацию о часовом поясе. |
Возвращаемое значение | Тип | Описание |
---|---|---|
<обновленная_метка_времени> | Строка | Текущая метка времени за вычетом указанного числа единиц времени |
Пример 1
Допустим, текущая метка времени такая: "2018-02-01T00:00:00.0000000Z". В этом примере от указанной метки времени отнимается пять дней.
getPastTime(5, 'Day')
Возвращается такой результат: "2018-01-27T00:00:00.0000000Z"
Пример 2
Допустим, текущая метка времени такая: "2018-02-01T00:00:00.0000000Z". В этом примере отнимается пять дней и результат преобразуется в формат "D":
getPastTime(5, 'Day', 'D')
Возвращается такой результат: "Saturday, January 27, 2018"
greater
Проверяет, является ли первое значение большим, чем второе. Возвращает значение true, если первое значение больше, или значение false, если меньше.
greater(<value>, <compareTo>)
greater('<value>', '<compareTo>')
Параметр | Обязательное поле | Type | Описание |
---|---|---|---|
<значение> | Да | Целое число, число с плавающей запятой или строка | Проверяет, является ли первое значение большим, чем второе |
<compareTo> | Да | Целое число, число с плавающей запятой или строка соответственно | Значение сравнения |
Возвращаемое значение | Тип | Описание |
---|---|---|
true или false | Логический | Возвращает значение true, если первое значение большим, чем второе. Возвращает значение false, если первое значение меньше или равно второму. |
Пример
В этих примерах проверяется, является ли первое значение большим, чем второе.
greater(10, 5)
greater('apple', 'banana')
И возвращаются следующие результаты:
- Первый пример:
true
. - Второй пример:
false
.
greaterOrEquals
Проверяет, является ли первое значение большим, чем второе, или равным ему. Возвращает true, если первое значение больше или равно, или значение false, если первое значение меньше.
greaterOrEquals(<value>, <compareTo>)
greaterOrEquals('<value>', '<compareTo>')
Параметр | Обязательное поле | Type | Описание |
---|---|---|---|
<значение> | Да | Целое число, число с плавающей запятой или строка | Проверяет, является ли первое значение большим, чем второе, или равным ему |
<compareTo> | Да | Целое число, число с плавающей запятой или строка соответственно | Значение сравнения |
Возвращаемое значение | Тип | Описание |
---|---|---|
true или false | Логический | Возвращает значение true, если первое значение больше или равно второму. Возвращает значение false, если первое значение меньше, чем второе. |
Пример
В этих примерах проверяется, является ли первое значение большим чем второе, или равным ему.
greaterOrEquals(5, 5)
greaterOrEquals('apple', 'banana')
И возвращаются следующие результаты:
- Первый пример:
true
. - Второй пример:
false
.
guid
Создает глобально уникальный идентификатор (GUID) в виде строки, например, "c2ecc88d-88c8-4096-912c-d6f2e2b138ce":
guid()
Кроме того, вы можете указать другой формат для GUID, отличный от формата по умолчанию ("D"), который состоит из 32 цифр, разделенных дефисом.
guid('<format>')
Параметр | Обязательное поле | Type | Описание |
---|---|---|---|
<format> | Нет | Строка | Один указатель формата для возвращенного идентификатора GUID. По умолчанию имеет формат "D", но можно использовать "N", "D", "B", "P" или "X". |
Возвращаемое значение | Тип | Описание |
---|---|---|
<значение GUID> | Строка | Случайно сгенерированный GUID |
Пример
В этом примере создается тот же идентификатор GUID, но в виде 32 цифр, разделенных дефисом и заключенных в круглые скобки:
guid('P')
Возвращается такой результат: "(c2ecc88d-88c8-4096-912c-d6f2e2b138ce)"
if
Проверьте, какое значение имеет выражение: true или false. Возвращает указанное значение на основе результата.
if(<expression>, <valueIfTrue>, <valueIfFalse>)
Параметр | Обязательное поле | Type | Описание |
---|---|---|---|
<выражение> | Да | Логический | Выражение для вычисления |
<valueIfTrue> | Да | Любое | Возвращаемое значение, если выражение истинно |
<valueIfFalse> | Да | Любое | Возвращаемое значение, если выражение ложно |
Возвращаемое значение | Тип | Описание |
---|---|---|
<указанное возвращаемое значение> | Любое | Возвращает указанное значение в зависимости от результата выражения: true или false. |
Пример
В этом примере возвращается "yes"
, потому что указанное выражение возвращает значение true.
В противном случае в примере возвращается "no"
:
if(equals(1, 1), 'yes', 'no')
indexOf
Возвращает начальную позицию или значение индекса для подстроки. Эта функция не учитывает регистр, и индексы начинаются с числа 0.
indexOf('<text>', '<searchText>')
Параметр | Обязательное поле | Type | Описание |
---|---|---|---|
<text> | Да | Строка | Строки, которая содержит подстроку для поиска |
<searchText> | Да | Строка | Подстрока для поиска |
Возвращаемое значение | Тип | Описание |
---|---|---|
<значение индекса> | Целое | Начальное положение или значение индекса указанной подстроки. Если строка не найдена, возвращается число -1. |
Пример
Этот пример находит начальное значение индекса для подстроки "world" в строке "hello world":
indexOf('hello world', 'world')
Возвращается такой результат: 6
int
Возвращает целочисленную версию строки.
int('<value>')
Параметр | Обязательное поле | Type | Описание |
---|---|---|---|
<значение> | Да | Строка | Преобразуемая строка |
Возвращаемое значение | Тип | Описание |
---|---|---|
<целочисленный результат> | Целое | Целочисленная версия указанной строки |
Пример
В этом примере создается целочисленная версия строки "10":
int('10')
Возвращается такой результат: 10
json
Возвращает значение типа JSON либо объект для строки или XML.
json('<value>')
Параметр | Обязательное поле | Type | Описание |
---|---|---|---|
<значение> | Да | Строка или XML | Строка или XML для преобразования |
Возвращаемое значение | Тип | Описание |
---|---|---|
<результат JSON> | Собственный тип или объект JSON | Значение собственного типа или объекта JSON для заданной строки или XML. Если строка имеет значение NULL, функция возвращает пустой объект. |
Пример 1
В этом примере эта строка преобразуется в значение JSON:
json('[1, 2, 3]')
Возвращается такой результат: [1, 2, 3]
Пример 2
В этом примере эта строка преобразуется в JSON:
json('{"fullName": "Sophia Owen"}')
Возвращается такой результат:
{
"fullName": "Sophia Owen"
}
Пример 3
В этом примере этот XML преобразуется в JSON:
json(xml('<?xml version="1.0"?> <root> <person id='1'> <name>Sophia Owen</name> <occupation>Engineer</occupation> </person> </root>'))
Возвращается такой результат:
{
"?xml": { "@version": "1.0" },
"root": {
"person": [ {
"@id": "1",
"name": "Sophia Owen",
"occupation": "Engineer"
} ]
}
}
intersection
Возвращает коллекцию, которая содержит только общие элементы в указанных коллекциях. Чтобы появиться в результатах, элемент должен находиться во всех коллекциях, переданных этой функции. Если один или несколько элементов имеют одинаковое имя, в результатах появляется последний элемент с таким именем.
intersection([<collection1>], [<collection2>], ...)
intersection('<collection1>', '<collection2>', ...)
Параметр | Обязательное поле | Type | Описание |
---|---|---|---|
<collection1>, <collection2>, ... | Да | Массив или объект, но не оба типа | Коллекции, из которых нужно получить только общие элементы |
Возвращаемое значение | Тип | Описание |
---|---|---|
<общий элементы> | Массив или объект соответственно | Коллекция, которая содержит только общие элементы в указанных коллекциях |
Пример
В этом примере находятся общие элементы в этих массивах:
intersection(createArray(1, 2, 3), createArray(101, 2, 1, 10), createArray(6, 8, 1, 2))
И возвращается массив только с этими элементами: [1, 2]
join
Возвращает строку, содержащую все элементы из массива, в которой каждый символ отделен разделителем.
join([<collection>], '<delimiter>')
Параметр | Обязательное поле | Type | Описание |
---|---|---|---|
<collection> | Да | Массив | Массив, который содержит элементы для объединения |
<разделитель> | Да | Строка | Разделитель, содержащийся между каждым символом в результирующей строке |
Возвращаемое значение | Тип | Описание |
---|---|---|
<char1><delimiter><char2><delimiter>... | Строка | Полученная строка, созданная из всех элементов в указанном массиве |
Пример
В этом примере создается строка из всех элементов этого массива с указанным символом в качестве разделителя:
join(createArray('a', 'b', 'c'), '.')
Возвращается такой результат: "a.b.c"
last
Возвращает последний элемент из коллекции.
last('<collection>')
last([<collection>])
Параметр | Обязательное поле | Type | Описание |
---|---|---|---|
<collection> | Да | Строка или массив | Коллекция, в которой нужно найти последний элемент |
Возвращаемое значение | Тип | Описание |
---|---|---|
<последний элемент коллекции> | Строка или массив соответственно | Последний элемент в коллекции |
Пример
Эти примеру ищут последний элемент в этих коллекциях:
last('abcd')
last(createArray(0, 1, 2, 3))
И возвращаются следующие результаты:
- Первый пример:
"d"
. - Второй пример:
3
.
lastIndexOf
Возвращает начальную позицию или значение индекса последнего вхождения подстроки. Эта функция не учитывает регистр, и индексы начинаются с числа 0.
lastIndexOf('<text>', '<searchText>')
Параметр | Обязательное поле | Type | Описание |
---|---|---|---|
<text> | Да | Строка | Строки, которая содержит подстроку для поиска |
<searchText> | Да | Строка | Подстрока для поиска |
Возвращаемое значение | Тип | Описание |
---|---|---|
<конечное значение индекса> | Целое | Начальная позиция или значение индекса последнего вхождения указанной подстроки. Если строка не найдена, возвращается число -1. |
Пример
Этот пример находит начальное значение индекса для последнего вхождения подстроки "world" в строке "hello world":
lastIndexOf('hello world', 'world')
Возвращается такой результат: 6
length
Возвращает число элементов в коллекции.
length('<collection>')
length([<collection>])
Параметр | Обязательное поле | Type | Описание |
---|---|---|---|
<collection> | Да | Строка или массив | Коллекция с элементами для подсчета |
Возвращаемое значение | Тип | Описание |
---|---|---|
<длина или число> | Целое | Число элементов в данной коллекции |
Пример
В этих примерах подсчитывается количество элементов в этих коллекциях:
length('abcd')
length(createArray(0, 1, 2, 3))
Возвращается результат: 4
less
Проверяет, является ли первое значение меньшим, чем второе. Возвращает true, если первое значение меньше, или значение false, если первое значение больше.
less(<value>, <compareTo>)
less('<value>', '<compareTo>')
Параметр | Обязательное поле | Type | Описание |
---|---|---|---|
<значение> | Да | Целое число, число с плавающей запятой или строка | Первое значение, для которого выполняется проверка того, является ли оно меньшим, чем второе. |
<compareTo> | Да | Целое число, число с плавающей запятой или строка соответственно | Элемент для сравнения |
Возвращаемое значение | Тип | Описание |
---|---|---|
true или false | Логический | Возвращает значение true, если первое значение меньше, чем второе. Возвращает значение false, если первое значение больше или равно второму. |
Пример
В этих примерах проверяется, является ли первое значение меньшим, чем второе.
less(5, 10)
less('banana', 'apple')
И возвращаются следующие результаты:
- Первый пример:
true
. - Второй пример:
false
.
lessOrEquals
Проверяет, является ли первое значение меньшим, чем второе, или равным ему. Возвращает true, если первое значение меньше или равно, или значение false, если первое значение больше.
lessOrEquals(<value>, <compareTo>)
lessOrEquals('<value>', '<compareTo>')
Параметр | Обязательное поле | Type | Описание |
---|---|---|---|
<значение> | Да | Целое число, число с плавающей запятой или строка | Проверяет, является ли первое значение меньшим, чем второе, или равным ему |
<compareTo> | Да | Целое число, число с плавающей запятой или строка соответственно | Элемент для сравнения |
Возвращаемое значение | Тип | Описание |
---|---|---|
true или false | Логический | Возвращает значение true, если первое значение меньше или равно второму. Возвращает значение false, если первое значение больше, чем второе. |
Пример
В этих примерах проверяется, является ли первое значение меньшим или равным второму.
lessOrEquals(10, 10)
lessOrEquals('apply', 'apple')
И возвращаются следующие результаты:
- Первый пример:
true
. - Второй пример:
false
.
max
Возвращает наибольшее значение из списка или массива, охватывающих последние и начальные значения.
max(<number1>, <number2>, ...)
max([<number1>, <number2>, ...])
Параметр | Обязательное поле | Type | Описание |
---|---|---|---|
<number1>, <number2>, ... | Да | Целое число, число с плавающей запятой или оба типа | Набор чисел, из которого требуется получить наибольшее значение |
[<number1>, <number2>, ...] | Да | Массив — целое число, число с плавающей запятой или оба типа | Массив чисел, из которого требуется получить наибольшее значение |
Возвращаемое значение | Тип | Описание |
---|---|---|
<макс. значение> | Целое число и число с плавающей запятой | Максимальное значение в указанном массиве или набор чисел |
Пример
В этих примерах извлекается наибольшее значение из набора чисел и массива:
max(1, 2, 3)
max(createArray(1, 2, 3))
Возвращается результат: 3
min
Возвращает наименьшее значение из набора чисел или массива.
min(<number1>, <number2>, ...)
min([<number1>, <number2>, ...])
Параметр | Обязательное поле | Type | Описание |
---|---|---|---|
<number1>, <number2>, ... | Да | Целое число, число с плавающей запятой или оба типа | Набор чисел, из которого требуется получить наименьшее значение |
[<number1>, <number2>, ...] | Да | Массив — целое число, число с плавающей запятой или оба типа | Массив чисел, из которого требуется получить наименьшее значение |
Возвращаемое значение | Тип | Описание |
---|---|---|
<мин. значение> | Целое число и число с плавающей запятой | Наименьшее значение в указанном наборе чисел или массиве |
Пример
В этих примерах извлекается наименьшее значение из набора чисел и массива:
min(1, 2, 3)
min(createArray(1, 2, 3))
Возвращается результат: 1
mod
Верните оставшуюся часть из деления одного числа на другое число. Для целочисленного деления см . раздел div().
mod(<dividend>, <divisor>)
Параметр | Обязательное поле | Type | Описание |
---|---|---|---|
<dividend> | Да | Целое число и число с плавающей запятой | Число, которое нужно поделить на делитель |
<divisor> | Да | Целое число и число с плавающей запятой | Число, на которое делится делимое. Значение делителя равно нулю приводит к ошибке во время выполнения. |
Возвращаемое значение | Тип | Описание |
---|---|---|
<остаток> | Целое число и число с плавающей запятой | Остаток результата деления первого числа на второе |
Пример
В этом примере вычисляется оставшаяся часть, когда первое число делится на второй номер:
mod(3, 2)
Возвращается такой результат: 1
mul
Возвращает результат умножения двух чисел.
mul(<multiplicand1>, <multiplicand2>)
Параметр | Обязательное поле | Type | Описание |
---|---|---|---|
<multiplicand1> | Да | Целое число и число с плавающей запятой | Число для умножения на multiplicand2 |
<multiplicand2> | Да | Целое число и число с плавающей запятой | Число, умножающее умножение 1 |
Возвращаемое значение | Тип | Описание |
---|---|---|
<результат> | Целое число и число с плавающей запятой | Произведение от умножения первого числа на второе |
Пример
Эти примеры умножают первое число на второй номер:
mul(1, 2)
mul(1.5, 2)
И возвращаются следующие результаты:
- Первый пример:
2
. - Второй пример:
3
.
not
Проверяет, имеет ли выражение значение false. Возвращает значение true, если выражение ложно, или значение false, если значение истинно.
not(<expression>)
Параметр | Обязательное поле | Type | Описание |
---|---|---|---|
<выражение> | Да | Логический | Выражение для вычисления |
Возвращаемое значение | Тип | Описание |
---|---|---|
true или false | Логический | Возвращает значение true, если выражение ложно. Возвращает значение false, если выражение истинно. |
Пример 1
В этих примерах проверяется, все ли указанные выражения ложны:
not(false)
not(true)
И возвращаются следующие результаты:
- В первом примере выражение имеет значение false, поэтому функция возвращает
true
. - Во втором примере выражение имеет значение true, поэтому функция возвращает
false
.
Пример 2
В этих примерах проверяется, все ли указанные выражения ложны:
not(equals(1, 2))
not(equals(1, 1))
И возвращаются следующие результаты:
- В первом примере выражение имеет значение false, поэтому функция возвращает
true
. - Во втором примере выражение имеет значение true, поэтому функция возвращает
false
.
or
Проверяет, является ли хотя бы одно выражение истинным. Возвращает значение true, если хотя бы одно выражение истинно, или значение false, когда оба являются ложными.
or(<expression1>, <expression2>)
Параметр | Обязательное поле | Type | Описание |
---|---|---|---|
<expression1>, <expression2> | Да | Логический | Выражения, которые следует проверить |
Возвращаемое значение | Тип | Описание |
---|---|---|
true или false | Логический | Возвращает значение true, если хотя бы одно выражение истинно. Возвращает значение false, если оба выражения ложны. |
Пример 1
В этих примерах проверяется, является ли хотя бы одно выражение истинным:
or(true, false)
or(false, false)
И возвращаются следующие результаты:
- В первом примере по крайней мере одно выражение имеет значение true, поэтому функция возвращает
true
. - Во втором примере оба выражения имеют значения false, поэтому функция возвращает
false
.
Пример 2
В этих примерах проверяется, является ли хотя бы одно выражение истинным:
or(equals(1, 1), equals(1, 2))
or(equals(1, 2), equals(1, 3))
И возвращаются следующие результаты:
- В первом примере по крайней мере одно выражение имеет значение true, поэтому функция возвращает
true
. - Во втором примере оба выражения имеют значения false, поэтому функция возвращает
false
.
rand
Возвращает случайное целое число из указанного диапазона с включительным значением только в начале.
rand(<minValue>, <maxValue>)
Параметр | Обязательное поле | Type | Описание |
---|---|---|---|
<minValue> | Да | Целое | Наименьшее целое число в диапазоне |
<maxValue> | Да | Целое | Целое число, следующее за наибольшим целым числом в диапазоне, которое функция может вернуть |
Возвращаемое значение | Тип | Описание |
---|---|---|
<случайный результат> | Целое | Случайное целое число, возвращаемое из указанного диапазона. Обратите внимание, что при каждом вызове rand() будет получен уникальный результат, то есть значение, которое вы наблюдаете при мониторинге выходных данных, может не совпадать с фактическим временем выполнения. |
Пример
Этот пример получает случайное целое число из указанного диапазона, исключая максимальное значение:
rand(1, 5)
И возвращает в виде результата одно из этих чисел: 1
, 2
, 3
или 4
.
range
Возвращает массив целых чисел, который начинается с заданного целого числа.
range(<startIndex>, <count>)
Параметр | Обязательное поле | Type | Описание |
---|---|---|---|
<startIndex> | Да | Целое | Целочисленное значение, которое является первым элементом массива. |
<count> | Да | Целое | Количество целых чисел в массиве |
Возвращаемое значение | Тип | Описание |
---|---|---|
[<range-result>] | Массив | Массив с целыми числами, который начинается с указанного индекса |
Пример
В этом примере создается целочисленный массив, который начинается с указанного индекса и имеет указанное число целых чисел:
range(1, 4)
Возвращается такой результат: [1, 2, 3, 4]
replace
Заменяет подстроку указанной строкой и возвращает полученную строку. Эта функция учитывает регистр.
replace('<text>', '<oldText>', '<newText>')
Параметр | Обязательное поле | Type | Описание |
---|---|---|---|
<text> | Да | Строка | Строка, которая содержит заменяемую подстроку |
<oldText> | Да | Строка | Заменяемая подстрока |
<newText> | Да | Строка | Строка для замены |
Возвращаемое значение | Тип | Описание |
---|---|---|
<обновленный текст> | Строка | Обновленная строка после замены подстроки Если подстрока не найдена, возвращает исходную строку. |
Пример
Этот пример выполняет поиск подстроки "old" в строке "the old string" и заменяет "old" на "new":
replace('the old string', 'old', 'new')
Возвращается такой результат: "the new string"
skip
Удаляет элементы из начала коллекции и возвращает все другие элементы.
skip([<collection>], <count>)
Параметр | Обязательное поле | Type | Описание |
---|---|---|---|
<collection> | Да | Массив | Коллекция, элементы которой требуется удалить |
<count> | Да | Целое | Положительное целое число для количества элементов в начале коллекции, которые требуется удалить |
Возвращаемое значение | Тип | Описание |
---|---|---|
[<updated-collection>] | Массив | Обновленная коллекция после удаления указанных элементов. |
Пример
В этом примере удаляется один элемент, число 0, в начале указанного массива:
skip(createArray(0, 1, 2, 3), 1)
И возвращается исходный массив и оставшиеся элементы: [1,2,3]
split
Разделить строку по каждому вхождений указанного разделителя, возвращая полученные подстроки в виде элементов массива. Разделитель обычно является одним символом, но поддерживаются многофакторные разделители.
split('<text>', '<delimiter>')
Параметр | Обязательное поле | Type | Описание |
---|---|---|---|
<text> | Да | Строка | Строка для разделения на подстроки |
<разделитель> | Да | Строка | Строка, используемая в качестве разделителя |
Возвращаемое значение | Тип | Описание |
---|---|---|
[<substring1>,<substring2>,...] | Массив | Массив, содержащий подстроки исходной строки |
Пример
В этом примере возвращается массив, содержащий подстроки строки "a_b_c" на основе разделителя "_":
split('a_b_c', '_')
Возвращается массив: ["a","b","c"]
startOfDay
Возвращает начало дня для метки времени.
startOfDay('<timestamp>', '<format>'?)
Параметр | Обязательное поле | Type | Описание |
---|---|---|---|
<timestamp> | Да | Строка | Строка, содержащая метку времени |
<format> | Нет | Строка | Либо один описатель формата, либо пользовательский шаблон формата. Формат по умолчанию для метки времени — "o" (ГГГГ-ММ-ДДTЧЧ:ММ:СС), который соответствует ISO 8601 и сохраняет информацию о часовом поясе. |
Возвращаемое значение | Тип | Описание |
---|---|---|
<обновленная_метка_времени> | Строка | Указанная метка времени, которая начинается с нулевого часа дня |
Пример
Этот пример находит начало дня для этой метки времени:
startOfDay('2018-03-15T13:30:30Z')
Возвращается такой результат: "2018-03-15T00:00:00.0000000Z"
startOfHour
Возвращает начало часа для метки времени.
startOfHour('<timestamp>', '<format>'?)
Параметр | Обязательное поле | Type | Описание |
---|---|---|---|
<timestamp> | Да | Строка | Строка, содержащая метку времени |
<format> | Нет | Строка | Либо один описатель формата, либо пользовательский шаблон формата. Формат по умолчанию для метки времени — "o" (ГГГГ-ММ-ДДTЧЧ:ММ:СС), который соответствует ISO 8601 и сохраняет информацию о часовом поясе. |
Возвращаемое значение | Тип | Описание |
---|---|---|
<обновленная_метка_времени> | Строка | Указанная метка времени, которая начинается с нулевой минуты часа |
Пример
Этот пример находит начало часа для этой метки времени:
startOfHour('2018-03-15T13:30:30Z')
Возвращается такой результат: "2018-03-15T13:00:00.0000000Z"
startOfMonth
Возвращает начало месяца для метки времени.
startOfMonth('<timestamp>', '<format>'?)
Параметр | Обязательное поле | Type | Описание |
---|---|---|---|
<timestamp> | Да | Строка | Строка, содержащая метку времени |
<format> | Нет | Строка | Либо один описатель формата, либо пользовательский шаблон формата. Формат по умолчанию для метки времени — "o" (ГГГГ-ММ-ДДTЧЧ:ММ:СС), который соответствует ISO 8601 и сохраняет информацию о часовом поясе. |
Возвращаемое значение | Тип | Описание |
---|---|---|
<обновленная_метка_времени> | Строка | Указанная метка времени, которая начинается с нулевого часа первого дня месяца |
Пример
Этот пример находит начало месяца для этой метки времени:
startOfMonth('2018-03-15T13:30:30Z')
Возвращается такой результат: "2018-03-01T00:00:00.0000000Z"
startsWith
Проверяет, начинается ли строка с определенной подстроки. Возвращает true, если подстрока найдена, или возвращает false, если нет. Эта функция не учитывает регистр.
startsWith('<text>', '<searchText>')
Параметр | Обязательное поле | Type | Описание |
---|---|---|---|
<text> | Да | Строка | Проверяемая строка |
<searchText> | Да | Строка | Начальная строка для поиска |
Возвращаемое значение | Тип | Описание |
---|---|---|
true или false | Логический | Возвращает значение true при обнаружении начальной подстроки. В противном случае возвращает значение false. |
Пример 1
В этом примере проверяется, начинается ли строка "hello world" подстрокой "hello":
startsWith('hello world', 'hello')
Возвращается такой результат: true
Пример 2
В этом примере проверяется, начинается ли строка "hello world" подстрокой "greetings":
startsWith('hello world', 'greetings')
Возвращается такой результат: false
string
Возвращает строковую версию значения.
string(<value>)
Параметр | Обязательное поле | Type | Описание |
---|---|---|---|
<значение> | Да | Любое | Значение, которое необходимо преобразовать |
Возвращаемое значение | Тип | Описание |
---|---|---|
<строковое значение> | Строка | Строковая версия указанного значения |
Пример 1
В этом примере создается строковая версия для этого числа:
string(10)
Возвращается такой результат: "10"
Пример 2
В этом примере создается строка для указанного объекта JSON и используется символ обратной косой черты (\) в качестве escape-символа для двойных кавычек (").
string( { "name": "Sophie Owen" } )
Возвращается такой результат: "{ \\"name\\": \\"Sophie Owen\\" }"
sub
Возвращает результат вычитания одного числа из другого числа.
sub(<minuend>, <subtrahend>)
Параметр | Обязательное поле | Type | Описание |
---|---|---|---|
<minuend> | Да | Целое число и число с плавающей запятой | Число, из которого вычитается вычитаемое |
<subtrahend> | Да | Целое число и число с плавающей запятой | Число, которое вычитается из уменьшаемого |
Возвращаемое значение | Тип | Description |
---|---|---|
<result> | Целое число и число с плавающей запятой | Вычитается второе число из первого числа и возвращается результат |
Пример
В этом примере из первого числа вычитается второе число:
sub(10.3, .3)
Возвращается такой результат: 10
substring
Возвращает символы из строки, начиная с указанной позиции или индекса. Значения индекса начинаются с числа 0.
substring('<text>', <startIndex>, <length>)
Параметр | Обязательное поле | Type | Описание |
---|---|---|---|
<text> | Да | Строка | Строка, символы которой требуется получить |
<startIndex> | Да | Целое | Положительное число (или 0), которое следует использовать как начальную позицию или значение индекса. |
<length> | Да | Целое | Положительное число символов для подстроки |
Возвращаемое значение | Тип | Описание |
---|---|---|
<результат подстроки> | Строка | Подстрока с указанным количеством символов, начиная с указанной позиции индекса в исходной строке |
Пример
В этом примере создается пятисимвольная подстрока из указанной строки, начиная со значения индекса 6:
substring('hello world', 6, 5)
Возвращается такой результат: "world"
subtractFromTime
Вычитает количество единиц времени из метки времени. См. раздел getPastTime.
subtractFromTime('<timestamp>', <interval>, '<timeUnit>', '<format>'?)
Параметр | Обязательное поле | Type | Описание |
---|---|---|---|
<timestamp> | Да | Строка | Строка, содержащая метку времени |
<interval> | Да | Целое | Число единиц времени для вычитания |
<timeUnit> | Да | Строка | Единицы времени для использования с интервалом: "секунда", "минута", "час", "день", "неделя", "месяц", "год" |
<format> | Нет | Строка | Либо один описатель формата, либо пользовательский шаблон формата. Формат по умолчанию для метки времени — "o" (ГГГГ-ММ-ДДTЧЧ:ММ:СС), который соответствует ISO 8601 и сохраняет информацию о часовом поясе. |
Возвращаемое значение | Тип | Описание |
---|---|---|
<обновленная_метка_времени> | Строка | Метка времени, от которой отнято указанное число единиц времени |
Пример 1
В этом примере из этой метки времени вычитается один день:
subtractFromTime('2018-01-02T00:00:00Z', 1, 'Day')
Возвращается такой результат: "2018-01-01T00:00:00:0000000Z"
Пример 2
В этом примере из этой метки времени вычитается один день:
subtractFromTime('2018-01-02T00:00:00Z', 1, 'Day', 'D')
И возвращается результат с использованием необязательного формата "D": "Monday, January, 1, 2018"
take
Возвращает элементы, расположенные в начале коллекции.
take('<collection>', <count>)
take([<collection>], <count>)
Параметр | Обязательное поле | Type | Описание |
---|---|---|---|
<collection> | Да | Строка или массив | Коллекция, элементы которой требуется получить |
<count> | Да | Целое | Положительное целое число для количества элементов в начале коллекции, которые требуется получить |
Возвращаемое значение | Тип | Описание |
---|---|---|
<subset> или [<subset>] | Строка или массив соответственно | Строка или массив, который содержит заданное число элементов, взятых из первой части исходной коллекции |
Пример
Эти примеры получают указанное количество элементов из первой части этих коллекций:
take('abcde', 3)
take(createArray(0, 1, 2, 3, 4), 3)
И возвращаются следующие результаты:
- Первый пример:
"abc"
. - Второй пример:
[0, 1, 2]
.
ticks
Возвращает значение свойства ticks
для указанной метки времени.
Интервал составляет 100 наносекунд.
ticks('<timestamp>')
Параметр | Обязательное поле | Type | Описание |
---|---|---|---|
<timestamp> | Да | Строка | Строка для метки времени |
Возвращаемое значение | Тип | Описание |
---|---|---|
<число тактов> | Целое | Число тактов, прошедших с 12:00:00 полуночи 1 января 0001 года по григорианскому календарю до указанной метки времени |
toLower
Возвращает строку символов в нижнем регистре. Если символ в строке не имеет версии в нижнем регистре, он добавляется в возвращаемую строку без изменений.
toLower('<text>')
Параметр | Обязательное поле | Type | Описание |
---|---|---|---|
<text> | Да | Строка | Строка, возвращаемая в нижнем регистре |
Возвращаемое значение | Тип | Описание |
---|---|---|
<текст в нижнем регистре> | Строка | Исходная строка в нижнем регистре |
Пример
В этом примере эта строка преобразуется в нижний регистр:
toLower('Hello World')
Возвращается такой результат: "hello world"
toUpper
Возвращает строку символов в верхнем регистре. Если символ в строке не имеет версии в верхнем регистре, он добавляется в возвращаемую строку без изменений.
toUpper('<text>')
Параметр | Обязательное поле | Type | Описание |
---|---|---|---|
<text> | Да | Строка | Строка, возвращаемая в верхнем регистре |
Возвращаемое значение | Тип | Описание |
---|---|---|
<текст в верхнем регистре> | Строка | Исходная строка в верхнем регистре |
Пример
В этом примере эта строка преобразуется в верхний регистр:
toUpper('Hello World')
Возвращается такой результат: "HELLO WORLD"
trim
Удаляет все начальные и конечные пробелы и возвращает обновленную строку.
trim('<text>')
Параметр | Обязательное поле | Type | Описание |
---|---|---|---|
<text> | Да | Строка | Строка, которая содержит начальные и конечные пробелы для удаления |
Возвращаемое значение | Тип | Описание |
---|---|---|
<обновленный текст> | Строка | Обновленная версия исходной строки без начальных и конечных пробелов |
Пример
В этом примере удаляются начальные и конечные пробелы из строки " Hello World ".
trim(' Hello World ')
Возвращается такой результат: "Hello World"
union
Возвращает коллекцию, которая содержит все элементы из указанных коллекций. Чтобы появиться в результатах, элемент должен содержаться в любой коллекции, переданной этой функции. Если один или несколько элементов имеют одинаковое имя, в результатах появляется последний элемент с таким именем.
union('<collection1>', '<collection2>', ...)
union([<collection1>], [<collection2>], ...)
Параметр | Обязательное поле | Type | Описание |
---|---|---|---|
<collection1>, <collection2>, ... | Да | Массив или объект, но не оба типа | Коллекции, из которых вы хотите получить все элементы |
Возвращаемое значение | Тип | Описание |
---|---|---|
<обновленная коллекция> | Массив или объект соответственно | Коллекция, которая содержит все элементы из указанных коллекций, без повторений |
Пример
В этом примере извлекаются все элементы из коллекций:
union(createArray(1, 2, 3), createArray(1, 2, 10, 101))
Возвращается такой результат: [1, 2, 3, 10, 101]
uriComponent
Возвращает кодированную версию URI для строки, заменив символы, опасные для URL-адреса, на escape-символы.
Используйте эту функцию вместо encodeUriComponent().
Хотя обе функции работают одинаково, uriComponent()
является предпочтительной.
uriComponent('<value>')
Параметр | Обязательное поле | Type | Описание |
---|---|---|---|
<значение> | Да | Строка | Строка для преобразования в формат закодированного URI |
Возвращаемое значение | Тип | Описание |
---|---|---|
<закодированный URI> | Строка | Строка с закодированным URI, содержащая escape-символы |
Пример
В этом примере создается версия с закодированным URI для этой строки:
uriComponent('https://contoso.com')
Возвращается такой результат: "http%3A%2F%2Fcontoso.com"
uriComponentToBinary
Возвращает двоичную версию компонента URI.
uriComponentToBinary('<value>')
Параметр | Обязательное поле | Type | Описание |
---|---|---|---|
<значение> | Да | Строка | Преобразуемая строка с закодированным URI |
Возвращаемое значение | Тип | Описание |
---|---|---|
<двоичная версия закодированного URI> | Строка | Двоичная версия строки с закодированным URI. Двоичное содержимое в формате Base64, представленное с помощью $content . |
Пример
В этом примере создается двоичная версия для этой строки с закодированным URI:
uriComponentToBinary('http%3A%2F%2Fcontoso.com')
Возвращается такой результат:
"001000100110100001110100011101000111000000100101001100 11010000010010010100110010010001100010010100110010010001 10011000110110111101101110011101000110111101110011011011 110010111001100011011011110110110100100010"
uriComponentToString
Возвращает декодированную версию строки с закодированным URI.
uriComponentToString('<value>')
Параметр | Обязательное поле | Type | Описание |
---|---|---|---|
<значение> | Да | Строка | Декодируемая строка с закодированным URI |
Возвращаемое значение | Тип | Описание |
---|---|---|
<декодированный URI> | Строка | Декодированная версия строки с закодированным URI |
Пример
В этом примере создается декодированная версия строки с закодированным URI:
uriComponentToString('http%3A%2F%2Fcontoso.com')
Возвращается такой результат: "https://contoso.com"
utcNow
Возвращает текущую метку времени.
utcNow('<format>')
Кроме того, можно указать другой формат с помощью параметра <format>.
Параметр | Обязательное поле | Type | Описание |
---|---|---|---|
<format> | Нет | Строка | Либо один описатель формата, либо пользовательский шаблон формата. Формат по умолчанию для метки времени — "o" (ГГГГ-ММ-ДДTЧЧ:ММ:СС), который соответствует ISO 8601 и сохраняет информацию о часовом поясе. |
Возвращаемое значение | Тип | Описание |
---|---|---|
<текущая метка времени> | Строка | Текущая дата и время |
Пример 1
Предположим, сейчас 13:00:00 15 апреля 2018 года. В этом примере возвращается текущая метка времени:
utcNow()
Возвращается такой результат: "2018-04-15T13:00:00.0000000Z"
Пример 2
Предположим, сейчас 13:00:00 15 апреля 2018 года. В этом примере возвращается текущая метка времени с использованием необязательного формата "D":
utcNow('D')
Возвращается такой результат: "Sunday, April 15, 2018"
xml
Возвращает версию XML строки, которая содержит объект JSON.
xml('<value>')
Параметр | Обязательное поле | Type | Описание |
---|---|---|---|
<значение> | Да | Строка | Строка с объектом JSON для преобразования Объект JSON должен содержать только одно корневое свойство, которое не может быть массивом. |
Возвращаемое значение | Тип | Описание |
---|---|---|
<версия XML> | Object | Закодированный XML для заданной строки или объекта JSON |
Пример 1
В этом примере создается версия XML для этой строки, которая содержит объект JSON:
xml(json('{ \"name\": \"Sophia Owen\" }'))
Возвращается следующий XML:
<name>Sophia Owen</name>
Пример 2
Предположим, что у вас есть этот объект JSON:
{
"person": {
"name": "Sophia Owen",
"city": "Seattle"
}
}
В этом примере создается XML для строки, содержащей этот объект JSON:
xml(json('{\"person\": {\"name\": \"Sophia Owen\", \"city\": \"Seattle\"}}'))
Возвращается следующий XML:
<person>
<name>Sophia Owen</name>
<city>Seattle</city>
<person>
xpath
Проверяет XML на наличие узлов или значений, которые соответствуют выражению XPath, и возвращает соответствующие узлы или значения. Выражение XPath (или просто "XPath") помогает перемещаться по структуре документа XML, чтобы вы могли выбирать узлы или вычислять значения в содержимом XML.
xpath('<xml>', '<xpath>')
Параметр | Обязательное поле | Type | Описание |
---|---|---|---|
<xml> | Да | Любое | Строка XML для поиска узлов и значений, которые соответствуют значению выражения XPath |
<xpath> | Да | Любое | Выражение XPath, используемое для поиска соответствующих узлов или значений XML |
Возвращаемое значение | Тип | Описание |
---|---|---|
<узел XML> | XML | Узел XML, где только один узел соответствует указанному выражению XPath |
<значение> | Любое | Значение из узла XML, где только одно значение соответствует указанному выражению XPath |
[<xml-node1>, <xml-node2>, ...] -or- [<value1>, <value2>, ...] |
Массив | Массив с узлами XML или значениями, которые соответствуют указанному выражению XPath |
Пример 1
Следуя примеру 1, этот пример находит узлы, которые соответствуют узлу <count></count>
, и добавляет эти значения с помощью функции sum()
:
xpath(xml(parameters('items')), 'sum(/produce/item/count)')
Возвращается такой результат: 30
Пример 2
В этом примере оба выражения находят узлы, которые соответствуют узлу <location></location>
в указанных аргументах, которые содержат XML с пространством имен. Выражения используют обратную косую черту (\) как escape-символ для двойных кавычек (").
Выражение 1
xpath(xml(body('Http')), '/*[name()=\"file\"]/*[name()=\"location\"]')
Expression 2
xpath(xml(body('Http')), '/*[local-name()=\"file\" and namespace-uri()=\"http://contoso.com\"]/*[local-name()=\"location\"]')
Ниже приведены аргументы.
Это код XML, который включает пространство имен документа XML
xmlns="http://contoso.com"
:<?xml version="1.0"?> <file xmlns="http://contoso.com"> <location>Paris</location> </file>
Можно использовать любое выражение XPath:
/*[name()=\"file\"]/*[name()=\"location\"]
/*[local-name()=\"file\" and namespace-uri()=\"http://contoso.com\"]/*[local-name()=\"location\"]
Ниже приведен узел, соответствующий узлу <location></location>
:
<location xmlns="https://contoso.com">Paris</location>
Пример 3
Следуя примеру 3, этот пример находит значение в узле <location></location>
:
xpath(xml(body('Http')), 'string(/*[name()=\"file\"]/*[name()=\"location\"])')
Возвращается такой результат: "Paris"
Примечание.
Можно добавлять примечания к выражениям потока данных, но не в выражениях конвейера.
Связанный контент
Список системных переменных, которые можно использовать в выражениях, см. в статье System variables supported by Azure Data Factory (Системные переменные, поддерживаемые фабрикой данных Azure).