Функции преобразования строк#
1. Вхождение подстроки в строку (contains)#
Функция определяет, содержит ли первый аргумент значение второго аргумента, при этом оба аргумента преобразуются в строку.
Варианты написания функции:
contains;
Contains;
CONTAINS.
Синтаксис#
contains(IN.test, "TEST")
Contains($variable, "TEST")
CONTAINS($variable.test, "Test")
Contains(IN.test, 15)
Contains(IN.root.test, 34.76)
Примеры использования функции#
Входящее сообщение |
Правило трансформации |
Выходящее сообщение |
|---|---|---|
{ |
OUT.task =contains(IN, «9») |
{«task»:true} |
{ |
OUT.task =contains(IN.a, «9») |
{«task»:false} |
2. Проверка префикса (startsWith)#
Функция проверяет, начинается ли элемент во входящем сообщении с префикса, начиная с указанного индекса.
Варианты написания функции:
startsWith;
StartsWith.
Синтаксис#
startsWith("Test", IN.test, 3)
StartsWith("Test", IN.root.test)
StartsWith("Test", $variable)
Аргументы#
Строковое значение, искомый префикс.
Адрес элемента входящего сообщения, переменная окружения, переменная.
Целочисленное значение, индекс начала поиска, необязательный параметр, по умолчанию 0.
Примеры использования функции#
Входящее сообщение |
Правило трансформации |
Выходящее сообщение |
|---|---|---|
{ |
OUT.task = startsWith(«text9», IN.a) |
{«task»:false} |
{ |
OUT.task = startsWith(«text9», IN.b) |
{«task»:true} |
3. Проверка суффикса (endsWith)#
Функция проверяет, заканчивается ли элемент указанным значением суффикса.
Варианты написания функции:
endsWith;
EndsWith.
Синтаксис#
endsWith("Test", IN.test)
EndsWith("Test", IN.root.test)
EndsWith("Test", $variable)
Аргументы#
Строковое значение, искомый суффикс.
Адрес элемента входящего сообщения, переменная окружения, переменная.
Примеры использования функции#
Входящее сообщение |
Правило трансформации |
Выходящее сообщение |
|---|---|---|
{ |
OUT.task = endsWith(«63», IN.a) |
{«task»:true} |
{ |
OUT.task = endsWith(«45», IN.b) |
{«task»:false} |
4. Проверка регулярного выражения (regExp)#
Функция проверяет, соответствует ли элемент заданному регулярному выражению.
Варианты написания функции:
regExp;
RegExp.
Синтаксис#
regExp("\\w*/\\d{4}", IN.root.test)
RegExp("\\w*/\\d{4}", $var)
Аргументы#
Регулярное выражение.
Значение для проверки, адрес элемента сообщения, переменная, переменная окружения.
Примеры использования функции#
Входящее сообщение |
Правило трансформации |
Выходящее сообщение |
|---|---|---|
{ |
OUT.task = regExp(«\w{4}-\d{4}», IN.a) |
{«task»:true} |
{ |
OUT.task = regExp(«\w{4}-\d{6}», IN.a) |
{«task»:false} |
5. Получение подстроки (subString)#
Функция возвращает подстроку строкового значения элемента, начиная с символа, заданного индексом beginIndex, и заканчивая символом endIndex-1.
Варианты написания функции:
subString;
SubString.
Синтаксис#
subString(IN.root.test, 5, 7)
Аргументы#
Адрес элемента входящего сообщения, переменная окружения, переменная.
beginIndex — целочисленное значение, начальный индекс.
endIndex — целочисленное значение, индекс завершения подстроки.
Примеры использования функции#
Входящее сообщение |
Правило трансформации |
Выходящее сообщение |
|---|---|---|
{ |
OUT.task = subString(IN.a, 4, 12) |
{«task»:»15_nomer»} |
6. Получение индекса первого вхождения подстроки (indexOf)#
Функция возвращает целочисленное значение позиции найденной подстроки.
Варианты написания функции:
indexOf;
IndexOf.
Синтаксис#
IN.root.test1.test11 = "test11"
indexOf(IN.root.test1.test11, "t") // Результат 0
indexOf(IN.root.test1.test11, "es") // Результат 1
indexOf(IN.root.test1.test11, "t", 2) // Результат 3
indexOf(IN.root.test1.test11, "anything") // Результат -1
Аргументы#
Адрес элемента входящего сообщения, переменная окружения, переменная.
sequence — строка, подстрока для поиска.
offset — целочисленное значение, индекс смещения стартовой позиции поиска.
Примеры использования функции#
Входящее сообщение |
Правило трансформации |
Выходящее сообщение |
|---|---|---|
{ |
OUT.task = indexOf(IN.a, «15») |
{«task»:4} |
{ |
OUT.task = indexOf(IN.b, «sos») |
{«task»:-1} |
7. Получение индекса последнего вхождения подстроки (lastIndexOf)#
Функция возвращает целочисленное значение позиции найденной подстроки.
Варианты написания функции:
lastIndexOf;
LastIndexOf.
Синтаксис#
IN.root.test1.test11 = "test11"
lastIndexOf(IN.root.test1.test11, "t") // Результат 3
lastIndexOf(IN.root.test1.test11, "es") // Результат 1
lastIndexOf(IN.root.test1.test11, "t", 2) // Результат 0
lastIndexOf(IN.root.test1.test11, "anything") // Результат -1
Аргументы#
Адрес элемента входящего сообщения, переменная окружения, переменная.
sequence — строка, подстрока для поиска.
offset — целочисленное значение, индекс ограничения верхней границы позиции поиска.
Примеры использования функции#
Входящее сообщение |
Правило трансформации |
Выходящее сообщение |
|---|---|---|
{ |
OUT.task = lastIndexOf(IN.a, «t») |
{«task»:3} |
8. Разделение строки на несколько строк (split)#
Функция возвращает массив строковых значений, расположенных между разделителем. Разделителем может быть знак "|" или ",".
Варианты написания функции:
split;
Split;
SPLIT.
Синтаксис#
split(IN.root.test, "|")
Split($variable, ",")
Аргументы#
Адрес элемента входящего сообщения, переменная окружения, переменная.
Разделитель для подстрок.
Примеры использования функции#
Входящее сообщение |
Правило трансформации |
Выходящее сообщение |
|---|---|---|
{ |
OUT.task = split(IN.a, «,») |
{«task»:[«text15»,»nomer33»,»task73»]} |
9. Замена всех вхождений подстрок новой последовательностью символов (replace)#
Функция возвращает строковое значение с проведенной заменой всех вхождений найденной подстроки.
Варианты написания функции:
replace;
Replace.
Синтаксис#
replace(IN.root.test1.test, "ABC", "123")
replace($variable, IN.root.testString, $variable)
Аргументы#
Адрес элемента входящего сообщения, переменная окружения, переменная.
Подстрока(последовательность символов) подлежащая замене (нельзя использовать регулярные выражения).
Последовательность символов, которой будет заменена найденная подстрока.
Примеры использования функции#
Входящее сообщение |
Правило трансформации |
Выходящее сообщение |
|---|---|---|
{ |
OUT.task = replace(IN.a, «null», «ABC») |
{«task»:»text1563ABC»} |
10. Замена первого вхождения подстроки новой последовательностью символов (replaceFirst)#
Функция возвращает строковое значение, с проведенной заменой первого вхождения найденной подстроки.
Варианты написания функции:
replaceFirst;
ReplaceFirst.
Синтаксис#
replaceFirst(IN.root.test1.test, "abc", "qwe")
replaceFirst(IN.root.test1.test, "\\d{5}", "***")
replace($variable, "_!!_", $variable)
Аргументы#
Адрес элемента входящего сообщения, переменная окружения, переменная.
Регулярное выражение, которому должна соответствовать подстрока.
Последовательность символов, которой будет заменена найденная подстрока.
Примеры использования функции#
Входящее сообщение |
Правило трансформации |
Выходящее сообщение |
|---|---|---|
{ |
replaceFirst(IN.a, «abc», «123») |
{«task»:»123-1563null-abc»} |
11. Замена всех вхождений подстроки новой последовательностью символов (replaceAll)#
Функция возвращает строковое значение, с проведенной заменой всех вхождений найденной подстроки.
Варианты написания функции:
replaceAll;
ReplaceAll.
Синтаксис#
replaceAll(IN.root.test1.test, "abc", "qwe")
replaceAll(IN.root.test1.test, "\\d{5}", "***")
replaceAll($variable, "_!!_", $variable)
Аргументы#
Адрес элемента входящего сообщения, переменная окружения, переменная.
Регулярное выражение, которому должна соответствовать подстрока.
Последовательность символов, которой будет заменена найденная подстрока.
Примеры использования функции#
Входящее сообщение |
Правило трансформации |
Выходящее сообщение |
|---|---|---|
{ |
OUT.task =replaceAll(IN.a, «abc», «123») |
{«task»:»123-1563null-123»} |
12.Форматирование строк (format)#
Функция возвращает строковое значение.
Варианты написания функции:
format;
Format.
Синтаксис#
format("a = %s, b = %f, c = %.5f, d = %%, e = %b", "test", toDouble(567.4534 + 234.12), 234.45, true)
format("a = %s, b = %.2f, c = %.3f, d = %%%d, e = %b", $variable_1, $variable_3, $variable_5, toInt(54+46), IN.root.test1.test17)
Format("a = %s, b = %.2f, c = %.3f, d = %%, e = %b", "test", IN.root.test1.test16, 234.45, true)
Аргументы#
Аргументы функции аналогичны методу String.format(pattern, args …).
pattern — шаблон сообщения, сформированный согласно определенным правилам.
args — аргументы различных типов, необходимые для формирования строки на основе шаблона. Дополнительная информация по формированию шаблона сообщения.
Примеры использования функции#
Входящее сообщение |
Правило трансформации |
Выходящее сообщение |
|---|---|---|
{ |
OUT.task2 = format(«a = %s, b = %.2f, c = %.5f, d = %%.2d, e = %b», «test», 77, toDouble(567.4534 + 234.12), true) |
{«task2»:»a = test, b = 77,00, c = 801,57340, d = %.2d, e = true»} |
13. Преобразование входящего элемента в строку (nodeToString)#
Функция возвращает строковое представление элемента входящего сообщения.
Варианты написания функции:
NodeToString;
nodeToString.
Синтаксис#
nodeToString(IN.root.test1)
Аргументы#
Адрес элемента входящего сообщения, переменная окружения, переменная.
Примеры использования функции#
Входящее сообщение |
Правило трансформации |
Выходящее сообщение |
|---|---|---|
{ |
OUT.task = nodeToString(IN) |
{«task»:»{«a»:1563,»b»:»text4589»}»} |
14. Преобразование входящего элемента в Integer (nodeToInt)#
Функция возвращает числовое представление элемента входящего сообщения.
Варианты написания функции:
NodeToInt;
nodeToInt.
Синтаксис#
nodeToInt(IN.root.test1)
nodeToInt($variable)
nodeToInt("1233445")
nodeToInt("-1233445")
Аргументы#
Адрес элемента входящего сообщения, переменная окружения, переменная.
Примеры использования функции#
Входящее сообщение |
Правило трансформации |
Выходящее сообщение |
|---|---|---|
{ |
OUT.task = nodeToInt(IN.a) |
{«task»:1563} |
15. Преобразование символов строки в нижний регистр (toLowerCase)#
Функция возвращает строку, преобразованную в символы нижнего регистра.
Варианты написания функции:
ToLowerCase;
toLowerCase.
Синтаксис#
toLowerCase(IN.root.test1)
toLowerCase($variable)
toLowerCase("ТЕСТ")
Аргументы#
Адрес элемента входящего сообщения, переменная окружения, переменная.
Примеры использования функции#
Входящее сообщение |
Правило трансформации |
Выходящее сообщение |
|---|---|---|
{ |
OUT.task = toLowerCase(IN.a) |
{«task»:»function-77»} |
16. Преобразование символов строки в верхний регистр, toUpperCase#
Функция возвращает строку, преобразованную в символы верхнего регистра.
Варианты написания функции:
ToUpperCase;
toUpperCase.
Синтаксис#
toUpperCase(IN.root.test1)
ToUpperCase($variable)
ToUpperCase("Тест")
Аргументы#
Адрес элемента входящего сообщения, переменная окружения, переменная.
Примеры использования функции#
Входящее сообщение |
Правило трансформации |
Выходящее сообщение |
|---|---|---|
{ |
OUT.task = toUpperCase(IN.a) |
{«task»:»FUNCTION-77»} |