Строковые функции¶
Строковые функции - это функции, которые позволяют работать с текстовыми данными: изменять, объединять, очищать, искать.
Синтаксис формул похож на SQL.
CHAR¶
Позволяет отобразить символ ASCII кода, записанный числом.
Возвращает строку с символом ASCII кода из числа value.
Тип данных value: Число (целое)
Исходные данные: Доступны данные прибыли по заказам.
Цель: Отобразить символ "стрелка вверх" напротив суммы больше 1000.
Формула:
Результат:
Подробнее
1.В виджете на вкладке Данные поле Profit
(прибыль) определено как Группы.
Profit_up
(рост), в Промежутоное значение указана формула IF [profit] > 1000 THEN CHAR (94)(1) ELSE CHAR (88)(2) END
.
если условие соблюдено, то выводим символ стрелки
если условие не соблюдено, то выводим символ х
3.Расчетный агрегат Profit_up
(рост) определен как Столбцы.
CONCAT¶
Позволяет "склеить" данные в одну строку.
Возвращает строку, полученную объединением value_N.
Тип данных value: Логический, Дата, Число (дробное), Число (целое), Строка
Похожие: ALL_CONCAT | TOP_CONCAT
Исходные данные: Доступны данные по году, месяцу и дню заказа.
Цель: Отобразить дату заказа в формате "Дата заказа: ДД.ММ.ГГГГ".
Формула:
Результат:
Подробнее
1.В виджете на вкладке Вид выбрана таблица агрегатов.
2.На вкладке Данные поля Den
(день), Mesac
(месяц), God
(год) определены как Группы.
3.В Расчетные агрегаты добавлен новый агрегат Date_string
(дата заказа), в Промежутоное значение указана формула CONCAT ('Дата заказа: ', [den], '.', [mesac], '.', [god])
.
4.Расчетный агрегат Date_string
(дата заказа) определен как Агрегаты.
CONTAINS¶
Позволяет проверить наличие подстроки в строке учитывая регистр написания.
Возвращает 1 (true), если string содержит substring. Это регистрозависимая проверка.
Тип данных string: Логический, Дата, Число (дробное), Число (целое), Строка
Тип данных substring: Строка
Похожие: ENDSWITH | IENDSWITH | ICONTAINS | ISTARTSWITH | STARTSWITH | LEFT | RIGHT | SUBSTR
Исходные данные: Доступны данные по категориям товаров в заказах.
Цель: Отметить 1 строки, где встречалась категория Furniture.
Формула:
Результат:
Подробнее
1.В виджете на вкладке Вид выбрана таблица агрегатов.
2.На вкладке Данные поле Category
(категории) определено как Группы.
3.В Расчетные агрегаты добавлен новый агрегат Category_check
(проверка категории), в Промежутоное значение указана формула CONTAINS ([category], 'Furniture')
.
4.Расчетный агрегат Category_check
(проверка категории) определен как Агрегаты.
ENDSWITH¶
Позволяет проверить наличие подстроки в конце строки учитывая регистр написания.
Возвращает 1 (true), если string заканчивается substring. Это регистрозависимая проверка.
Тип данных string: Логический, Дата, Число (дробное), Число (целое), Строка
Тип данных substring: Строка
Похожие: CONTAINS | IENDSWITH | ICONTAINS | ISTARTSWITH | STARTSWITH | LEFT | RIGHT | SUBSTR
Исходные данные: Доступны данные по категориям товаров в заказах, категория "other" всегда указана последней.
Цель: Отметить 1 строки, где встречалась категория Other.
Формула:
Результат:
Подробнее
1.В виджете на вкладке Вид выбрана таблица агрегатов.
2.На вкладке Данные поле Category
(категории) определено как Группы.
3.В Расчетные агрегаты добавлен новый агрегат Category_check
(проверка категории), в Промежутоное значение указана формула ENDSWITH ([category], 'Other')
.
4.Расчетный агрегат Category_check
(проверка категории) определен как Агрегаты.
FIND¶
Позволяет получить номер символа строки, на котором начинается подстрока.
Возвращает номер первого символа substring из string. Параметр index задает начальную позицию для поиска (по умолчанию - 1).
Тип данных string и substring: Строка
Тип данных index: Число (целое)
Исходные данные: Доступны данные по клиенту: номер в системе и телефон.
Цель: Проверить наличие корректного (начинается с +7) номера телефона клиента. Если получим 0, значит номера нет или он некорректный.
Формула:
Результат:
Подробнее
1.В виджете на вкладке Вид выбрана таблица агрегатов.
2.На вкладке Данные поле Clients
(клиент) определено как Группы.
3.В Расчетные агрегаты добавлен новый агрегат Clients_check
(проверка данных клиента), в Промежутоное значение указана формула FIND ([clients], '+7')
.
4.Расчетный агрегат Clients_check
(проверка данных клиента) определен как Агрегаты.
ICONTAINS¶
Позволяет проверить наличие подстроки в строке без учета регистра написания.
Возвращает 1 (true), если string содержит substring. Это регистроНЕзависимая проверка.
Тип данных string: Логический, Дата, Число (дробное), Число (целое), Строка
Тип данных substring: Строка
Похожие: CONTAINS | ENDSWITH | IENDSWITH | ISTARTSWITH | STARTSWITH | LEFT | RIGHT | SUBSTR
Исходные данные: Доступны данные по категориям товаров в заказах.
Цель: Отметить 1 строки, где встречалась категория Furniture.
Формула:
Результат:
Подробнее
1.В виджете на вкладке Вид выбрана таблица агрегатов.
2.На вкладке Данные поле Category
(категории) определено как Группы.
3.В Расчетные агрегаты добавлен новый агрегат Category_check
(проверка категории), в Промежутоное значение указана формула ICONTAINS ([category], 'furniture')
.
4.Расчетный агрегат Category_check
(проверка категории) определен как Агрегаты.
IENDSWITH¶
Позволяет проверить наличие подстроки в конце строки без учета регистра написания.
Возвращает 1 (true), если string заканчивается substring. Это регистроНЕзависимая проверка.
Тип данных string: Логический, Дата, Число (дробное), Число (целое), Строка
Тип данных substring: Строка
Похожие: CONTAINS | ENDSWITH | ICONTAINS | ISTARTSWITH | STARTSWITH | LEFT | RIGHT | SUBSTR
Исходные данные: Доступны данные по категориям товаров в заказах, категория "other" всегда указана последней.
Цель: Отметить 1 строки, где встречалась категория other.
Формула:
Результат:
Подробнее
1.В виджете на вкладке Вид выбрана таблица агрегатов.
2.На вкладке Данные поле Category
(категории) определено как Группы.
3.В Расчетные агрегаты добавлен новый агрегат Category_check
(проверка категории), в Промежутоное значение указана формула IENDSWITH ([category], 'other')
.
4.Расчетный агрегат Category_check
(проверка категории) определен как Агрегаты.
ISTARTSWITH¶
Позволяет проверить наличие подстроки в начале строки без учета регистра написания.
Возвращает 1 (true), если string начинается с substring. Это регистроНЕзависимая проверка.
Тип данных string: Логический, Дата, Число (дробное), Число (целое), Строка
Тип данных substring: Строка
Похожие: CONTAINS | ENDSWITH | IENDSWITH | ICONTAINS | STARTSWITH | LEFT | RIGHT | SUBSTR
Исходные данные: Доступны данные по датам заказов.
Цель: Отметить 1 заказы 2024 года.
Формула:
Результат:
LEFT¶
Позволяет получить подстроку заданной длины из начала строки.
Возвращает подстроку длиной number из начала string.
Тип данных string: Строка
Тип данных number: Число (целое)
Похожие: CONTAINS | ENDSWITH | IENDSWITH | ICONTAINS | ISTARTSWITH | STARTSWITH | RIGHT | SUBSTR | REGEXP_EXTRACT | REGEXP_REPLACE | REPLACE
Исходные данные: Доступны данные по клиенту: номер в системе и телефон.
Цель: Получить номер клиента в системе.
Формула:
Результат:
Подробнее
1.В виджете на вкладке Вид выбрана таблица агрегатов.
2.На вкладке Данные поле Clients
(клиент) определено как Группы.
3.В Расчетные агрегаты добавлен новый агрегат Clients_number
(номер клиента), в Промежутоное значение указана формула LEFT ([clients], 3)
.
4.Расчетный агрегат Clients_number
(номер клиента) определен как Агрегаты.
LEN¶
Позволяет получить количество символов в строке.
Возвращает количество символов в string.
Тип данных string: Строка
Исходные данные: Доступны данные по номеру телефона клиента.
Цель: Проверить корректность номера телефона. Количество символов в номере 12 с учетом +.
Формула:
Результат:
Подробнее
1.В виджете на вкладке Вид выбрана таблица агрегатов.
2.На вкладке Данные поле Phone
(телефон) определено как Группы.
3.В Расчетные агрегаты добавлен новый агрегат Phone_check
(проверка телефона), в Промежутоное значение указана формула LEN ([phone])
.
4.Расчетный агрегат Phone_check
(проверка телефона) определен как Агрегаты.
LOWER¶
Позволяет привести строку к нижнему регистру.
Возвращает string в нижнем регистре.
Тип данных string: Строка
Похожие: UPPER
Исходные данные: Доступны данные по категориям товаров в заказах.
Цель: Привести к единому написанию (с прописной буквы) наименования категорий.
Формула:
Результат:
Подробнее
1.В виджете на вкладке Вид выбрана таблица агрегатов.
2.На вкладке Данные поле Category
(категории) определено как Группы.
3.В Расчетные агрегаты добавлен новый агрегат Category_edit
(категории товаров), в Промежутоное значение указана формула LOWER ([category])
.
4.Расчетный агрегат Category_edit
(категории товаров) определен как Агрегаты.
LTRIM¶
Позволяет удалить лишние пробелы в начале строки.
Возвращает string без пробелов в начале строки.
Тип данных string: Строка
Исходные данные: Доступны данные по категориям товаров в заказах.
Цель: Удалить лишние пробелы в начале строки.
Формула:
Результат:
Подробнее
1.В виджете на вкладке Вид выбрана таблица агрегатов.
2.На вкладке Данные поле Category
(категории) определено как Группы.
3.В Расчетные агрегаты добавлен новый агрегат Category_edit
(категории товаров), в Промежутоное значение указана формула LTRIM ([category])
.
4.Расчетный агрегат Category_edit
(категории товаров) определен как Агрегаты.
REGEXP_EXTRACT¶
Позволяет получить новую строку из строки по регулярному выражению.
Возвращает новую строку из string по регулярному выражению pattern.
Для составления регулярного выражения используйте синтаксис RE2
Тип данных string и pattern: Строка
Похожие: REGEXP_REPLACE | REPLACE | LEFT | RIGHT | SUBSTR
Исходные данные: Доступны данные прибыли по заказам с указанием валюты.
Цель: Показать сумму прибыли без указания валюты.
Формула:
Результат:
Подробнее
1.В виджете на вкладке Вид выбрана таблица агрегатов.
2.На вкладке Данные поле Profit
(прибыль с валютой) определено как Группы.
Profit_n
(прибыль), в Промежутоное значение указана формула REGEXP_EXTRACT ([profit], '(\\d+(?:\\.\\d+)?) руб')(1)
.
\d+ - находим несколько цифр подряд
?: - следующие действия выполняются, если есть десятичная часть в сумме
\. - находим символ точки
\d+ - находим несколько цифр подряд после точки
руб - после числа должен быть текст "руб"
4.Расчетный агрегат Profit_n
(прибыль) определен как Агрегаты.
REGEXP_REPLACE¶
Позволяет заменить часть строки по регулярному выражению.
Возвращает обработанную строку string, часть которой была найдена по регулярному выражению pattern и заменена на replace.
Для составления регулярного выражения используйте синтаксис RE2
Тип данных string, replace и pattern: Строка
Похожие: REGEXP_EXTRACT | REPLACE | LEFT | RIGHT | SUBSTR
Исходные данные: Доступны данные прибыли по заказам с указанием валюты. Валюта написана по-разному .
Цель: Показать сумму прибыли и заменить валюту на р.
Формула:
Результат:
Подробнее
1.В виджете на вкладке Вид выбрана таблица агрегатов.
2.На вкладке Данные поле Profit
(прибыль с валютой) определено как Группы.
Profit_n
(прибыль), в Промежутоное значение указана формула REGEXP_REPLACE ([profit], '(?i)(\\d[\\d\\s\\.]*)\\s*руб(\\.|ль|лей)?','\\1 р.')(1)
.
?i - применить к группе, не учитывать регистр написания
\d - строка начинается с цифр
[\d\s\.] - находим набор символов из любых цифр (\d), который может содержать пробелы (\s) и разделитель точку (.)
* - повторяем при необходимости
\s - находим любое количество пробелов
руб(\.|ль|лей)? - находим текст "руб"/"руб."/"рубль"/"рублей", вся группа не обязательна к выполнению (?)
\1 - сохраняем полученное число (первая группа символов (\d[\d\s\.])) и заменяем только текст
4.Расчетный агрегат Profit_n
(прибыль) определен как Агрегаты.
REPLACE¶
Позволяет заменить часть строки.
Возвращает обработанную строку string, в которой часть substring заменена на replace.
Тип данных string, substring и pattern: Строка
Похожие: REGEXP_EXTRACT | REGEXP_REPLACE | LEFT | RIGHT | SUBSTR
Исходные данные: Доступны данные прибыли по заказам с указанием валюты.
Цель: Показать сумму прибыли и заменить валюту на р.
Формула:
Результат:
Подробнее
1.В виджете на вкладке Вид выбрана таблица агрегатов.
2.На вкладке Данные поле Profit
(прибыль с валютой) определено как Группы.
3.В Расчетные агрегаты добавлен новый агрегат Profit_n
(прибыль), в Промежутоное значение указана формула REPLACE ([profit], 'руб','р.')
.
4.Расчетный агрегат Profit_n
(прибыль) определен как Агрегаты.
RIGHT¶
Позволяет получить подстроку заданной длины с конца строки.
Возвращает подстроку длиной number с конца string.
Тип данных string: Строка
Тип данных number: Число (целое)
Похожие: CONTAINS | ENDSWITH | IENDSWITH | ICONTAINS | ISTARTSWITH | STARTSWITH | LEFT | SUBSTR | REGEXP_EXTRACT | REGEXP_REPLACE | REPLACE
Исходные данные: Доступны данные по клиенту: номер в системе и телефон.
Цель: Получить номер телефона клиента.
Формула:
Результат:
Подробнее
1.В виджете на вкладке Вид выбрана таблица агрегатов.
2.На вкладке Данные поле Clients
(клиент) определено как Группы.
3.В Расчетные агрегаты добавлен новый агрегат Clients_phone
(телефон клиента), в Промежутоное значение указана формула RIGHT ([clients], 12)
.
4.Расчетный агрегат Clients_phone
(телефон клиента) определен как Агрегаты.
RTRIM¶
Позволяет удалить лишние пробелы в конце строки.
Возвращает string без пробелов в конце строки.
Тип данных string: Строка
Исходные данные: Доступны данные по категориям товаров в заказах.
Цель: Удалить лишние пробелы в конце строки.
Формула:
Результат:
Подробнее
1.В виджете на вкладке Вид выбрана таблица агрегатов.
2.На вкладке Данные поле Category
(категории) определено как Группы.
3.В Расчетные агрегаты добавлен новый агрегат Category_edit
(категории товаров), в Промежутоное значение указана формула RTRIM ([category])
.
4.Расчетный агрегат Category_edit
(категории товаров) определен как Агрегаты.
STARTSWITH¶
Позволяет проверить наличие подстроки в начале строки учитывая регистр написания.
Возвращает 1 (true), если string начивается с substring. Это регистрозависимая проверка.
Тип данных string: Логический, Дата, Число (дробное), Число (целое), Строка
Тип данных substring: Строка
Похожие: CONTAINS | ENDSWITH | IENDSWITH | ICONTAINS | ISTARTSWITH | LEFT | RIGHT | SUBSTR
Исходные данные: Доступны данные по категориям товаров в заказах.
Цель: Отметить 1 строки, где первая категория Furniture.
Формула:
Результат:
Подробнее
1.В виджете на вкладке Вид выбрана таблица агрегатов.
2.На вкладке Данные поле Category
(категории) определено как Группы.
3.В Расчетные агрегаты добавлен новый агрегат Category_check
(проверка категории), в Промежутоное значение указана формула STARTSWITH ([category], 'Furniture')
.
4.Расчетный агрегат Category_check
(проверка категории) определен как Агрегаты.
SUBSTR¶
Позволяет получить подстроку заданной длины из строки, начиная с заданного символа.
Возвращает часть из string начиная с позиции index. Параметр number задает длину возвращаемой строки.
Тип данных string: Строка
Тип данных index и number: Число (целое)
Похожие: CONTAINS | ENDSWITH | IENDSWITH | ICONTAINS | ISTARTSWITH | STARTSWITH | LEFT | RIGHT | REGEXP_EXTRACT | REGEXP_REPLACE | REPLACE
Исходные данные: Доступны данные по клиенту: номер в системе и телефон.
Цель: Получить номер клиента.
Формула:
Результат:
Подробнее
1.В виджете на вкладке Вид выбрана таблица агрегатов.
2.На вкладке Данные поле Clients
(клиент) определено как Группы.
3.В Расчетные агрегаты добавлен новый агрегат Clients_number
(номер клиента), в Промежутоное значение указана формула SUBSTR ([clients], 2, 2)
.
4.Расчетный агрегат Clients_number
(номер клиента) определен как Агрегаты.
TRIM¶
Позволяет удалить лишние пробелы в начале и в конце строки.
Возвращает string без пробелов в начале и конце строки.
Тип данных string: Строка
Исходные данные: Доступны данные по категориям товаров в заказах.
Цель: Удалить лишние пробелы в начале и конце строки.
Формула:
Результат:
Подробнее
1.В виджете на вкладке Вид выбрана таблица агрегатов.
2.На вкладке Данные поле Category
(категории) определено как Группы.
3.В Расчетные агрегаты добавлен новый агрегат Category_edit
(категории товаров), в Промежутоное значение указана формула TRIM ([category])
.
4.Расчетный агрегат Category_edit
(категории товаров) определен как Агрегаты.
UPPER¶
Позволяет привести написание строки к верхнему регистру (заглавные буквы).
Возвращает string в верхнем регистре.
Тип данных string: Строка
Похожие: LOWER
Исходные данные: Доступны данные по категориям товаров в заказах.
Цель: Привести написание категорий к верхнему регистру.
Формула:
Результат:
Подробнее
1.В виджете на вкладке Вид выбрана таблица агрегатов.
2.На вкладке Данные поле Category
(категории) определено как Группы.
3.В Расчетные агрегаты добавлен новый агрегат Category_edit
(категории товаров), в Промежутоное значение указана формула UPPER ([category])
.
4.Расчетный агрегат Category_edit
(категории товаров) определен как Агрегаты.
UTF8¶
Позволяет преобразовать строку в UTF-8.
Возвращает string в кодировке UTF-8 из кодировки encoding.
Тип данных string и encoding: Строка
Исходные данные: Доступны данные по категориям товаров в заказах в кодировке CP-1251.
Цель: Привести написание категорий в кодировку UTF-8.
Формула:
Результат:
Подробнее
1.В виджете на вкладке Вид выбрана таблица агрегатов.
2.На вкладке Данные поле Category
(категории) определено как Группы.
3.В Расчетные агрегаты добавлен новый агрегат Category_edit
(категории товаров), в Промежутоное значение указана формула UTF8 ([category])
.
4.Расчетный агрегат Category_edit
(категории товаров) определен как Агрегаты.