Группа функций, предназначенных для работы с данными типа string.
StringConcatenate
string StringConcatenate(…)
Формирует строку из переданных параметров и возвращает её. Параметры могут иметь любой тип. Количество параметров не может превышать 64.
Параметры преобразуются в строки по тем же правилам, что и в функциях Print(), Alert() и Comment(). Возвращаемая строка получается в результате конкатенации строк, преобразованных из параметров функции.
Функция StringConcatenate() работает быстрее и экономнее по памяти, чем связывание строк при помощи операций сложения (+).
Параметры:
… — Любые значения, разделенные запятыми.
Пример:
string text; text=StringConcatenate("Account free margin is ", AccountFreeMargin(), " Current time is ", TimeToStr(TimeCurrent())); // text="Account free margin is " + AccountFreeMargin() + " Current time is " + TimeToStr(TimeCurrent()) Print(text);
StringFind
int StringFind(string text, string matched_text, int start=0)
Поиск подстроки. Возвращает номер позиции в строке, с которой начинается искомая подстрока, либо -1, если подстрока не найдена.
Параметры:
text — Строка, в которой производится поиск.
matched_text — Искомая подстрока.
start — Позиция в строке, с которой должен быть начат поиск.
Пример:
string text = "Быстрая коричневая собака перепрыгивает ленивую лисицу"; int index=StringFind(text, "собака перепрыгивает", 0); if(index!=20) Print("oops!");
StringGetChar
int StringGetChar(string text, int pos)
Возвращает значение символа, расположенного в указанной позиции строки.
Параметры:
text — Строка.
pos — Позиция символа в строке. Может быть от 0 до StringLen(text)-1.
Пример:
int char_code=StringGetChar("abcdefgh", 3); // символьный код 'c' = 99
StringLen
int StringLen(string text)
Возвращает число символов в строке.
Параметры:
text — Строка для вычисления длины.
Пример:
string str="some text"; if(StringLen(str)<5) return(0);
StringSetChar
string StringSetChar(string text, int pos, int value)
Возвращает копию строки с измененным значением символа в указанной позиции.
Параметры:
text — Строка для изменения.
pos — Позиция символа в строке. Может быть от 0 до StringLen(text).
value — Символьный код ASCII.
Пример:
string str = "abcdefgh"; string str1 = StringSetChar(str, 3, 'D'); // str1 = "abcDefgh"
StringSubstr
string StringSubstr(string text, int start, int length=0)
Извлекает подстроку из текстовой строки, начинающейся c указанной позиции.
Функция возвращает копию извлеченной подстроки, если возможно, иначе возвращается пустая строка.
Параметры:
text — Строка, из которой должна быть извлечена подстрока.
start — Начальная позиция подстроки. Может быть от 0 до StringLen(text)-1.
length — Длина извлекаемой подстроки. Если значение параметра меньше или равно 0 либо параметр не задан, то будет извлекаться подстрока, начиная с указанной позиции и до конца строки.
Пример:
string text = "Быстрая коричневая собака перепрыгивает ленивую лисицу"; string substr = StringSubstr(text, 8, 10); // извлеченная строка "коричневая"
StringTrimLeft
string StringTrimLeft(string text)
Функция урезает символы перевода каретки, пробелы и символы табуляции в левой части строки. Функция возвращает копию преобразованной строки, если это возможно, в противном случае возвращается пустая строка.
Параметры:
text — Строка, которая будет срезана слева.
Пример:
string str1=" Hello world "; string str2=StringTrimLeft(str); // после срезания str2, у переменной будет значение - "Hello World "
StringTrimRight
string StringTrimRight(string text)
Функция урезает символы перевода каретки, пробелы и символы табуляции в правой части строки. Функция возвращает копию преобразованной строки, если это возможно, в противном случае возвращается пустая строка.
Параметры:
text — Строка, которая будет срезана справа.
Пример:
string str1 = " Hello world "; string str2=StringTrimRight(str); // после срезания str2, у переменной будет значение - " Hello World"