Работа со строками
< Платформа 3V | Выражение | Расчет выражений
Перейти к навигации
Перейти к поиску
Версия от 08:33, 23 декабря 2021; A.kazanceva (обсуждение | вклад) (→Объединение и разбиение строк)
Общие функции работы со строками
- Concatenate([разделитель:строка], [строка 1], ..., [строка N]) - объединение строк
- IndexOf([строка, в которой ищем], [строка, которую ищем]) - возвращает индекс первого символа строки, которую ищем или -1, если не найдена
- Length([строка]) - возвращает длину строки
- Letter([целое число - индекс латинской буквы]) - возвращает букву от A до Z
- Padleft([строка], [ожидаемая длина строки], [символ "замощения" слева])
- Substring([строка], [начальный индекс, начиная с 0], [кол-во символов])
Объединение и разбиение строк
- Split([0], [1]) - Разбивает строку на коллекцию строковых элементов через разделитель
- Join([0], [1]) - Объединяет коллекцию через разделитель в строку
Реализовано в версии 0.40
Replace() Заменять заданный текст можно с помощью функции Replace(<Source_String>, <Find_String>, <Replaced_String>), где
- Source_String - текст в котором требуется заменить строку
- Find_String - строка, которую требуется заменить
- Replaced_String - строка, которой будет заменена Find_String
1 {
2 "expression": "Replace('хо-хо', 'о', 'е')"
3 }
Format() Чтобы вставить в текст значения(??) следует использовать функцию формата Format(<Source_Template>, <Collection_Values>) или Format(<Source_Template>, <Value0>, <Value1>, <Value2>...), где
- Source_Template - шаблон для вставки, где вставка значения обозначается {0}
- Value - вставляемое значение. Счётчик идентификатора для значения начинается с 0.
1 {
2 "expression": "Format('{0} + {0} = {1}', '2', '5')"
3 },
4 {
5 "expression": "Format('{0} + {0} = {1}', ToList('2', '5'))"
6 }
Trim() Для того, чтобы убрать пробелы в начале и в конце строки следует использовать функцию Trim(<Source_String>), где
- Source_String - строка, в которой обрезаются пробелы в начале и в конце
1 {
2 "expression": "Trim(' пробелы между словами будут, а по краям нет ')"
3 }
Реализовано в версии 0.42
JPath() Для того, чтобы вывести требуемые свойства из строки вида json следует использовать функцию JPath(<json>, <jpath>, <expression>), где
- json - объект json, из которого следует втянуть значения
- jpath - свойства json, значения которых будут выведены в результате. Задаются в строковом виде, либо в коллекции строк
- expression - объект json, из которого следует втянуть значения
1 {
2 "expression": "JPath(ToString([0]), '$.rhumbs[*].'+[1],true)",
3 "operandValues": [
4 {
5 "id": 0,
6 "value": "{'startPoint':[58.37194012413617,60.662785146257235],'skip':1,'rhumbs':[{'rhumb':'NW','angle':75,'distance':100},{'rhumb':'SW','angle':0,'distance':51},{'rhumb':'SW','angle':56,'distance':128},{'rhumb':'NW','angle':47,'distance':253},{'rhumb':'SE','angle':81,'distance':299}],'turningPointsIds':['7917fe71-372c-41d0-8ffc-6d97931e5a4e','24e963a2-797f-4060-8e6d-07b002e97b8b','88161be8-860e-4b48-ab3e-9c19dc51f948','5345d652-d0e6-45a1-b846-ee1d5add7378','cedbbd41-c214-448e-b07f-5f422ffff463'],'bindLineId':'cf1fa88b-669f-404f-9490-5488d2b980aa'}"
7 },
8 {
9 "id": 1,
10 "value": "['rhumb', 'angle']"
11 }
12 ]
13 }
Результат:
1 [
2 "NW",
3 "SW",
4 "SW",
5 "NW",
6 "SE"
7 ]