Строковыми выражениями называются такие выражения, в которых операндами служат строковые данные (строка символов). Конкатенация - это операция соединения двух строк. Выполняется она с помощью знака "+".
Stroka := Stroka1 + Stroka2;Для работы со строками определены следующие функции:
- Concat(Str1[,Str2,...Str_N]:String):String - соединение строк Str1,Str2,...Str_N;
- Length(Str): Integer - вычисляет длину строки Str;
- Pos(SubStroka: String; Str: String) : Integer - вычисляет номер символа, начиная с которого SubStroka (подстрока) входит в Str (строку). Указывается первое вхождение, при отсутствии вхождения функция возвращает ноль;
- Copy(Str; Index, Count: Integer): String - копирует фрагмент строки из строки Str, начиная с символа Index и количество скопированных символов будет равно Count. (Из компонента Edit1 копируется текст начиная со 2-го символа в количестве шести);
Edit2.Text := Copy(Edit1.Text,2,6);
а также процедуры:
- Val(Str; var N; var Code : Integer) - строка Str преобразуется в число N, переменная Code возвращает результат преобразования (0 при успешном выполнении операции);
- Str(N [: Width[: Decimals]]; var Stroka) - численное значение N преобразуется в строку Stroka;
- Insert (Str :String; var Stroka : String; Index :Integer) - вставка строки Str в строку Stroka, вставка осуществляется с символа Index;
- Delete(var Str: String; Index, Count : Integer) - удаление из строки Str подстроки символов в количестве Count, начиная с позиции символа Index.
Для работы со строками большое количество процедур и функций содержится в модуле SysUtils. Перечислим основные:
- StrToInt(const Str: String): Integer - преобразование в целое число строки Str;
- IntToStr(N: Integer) : String - преобразование в строку целочисленного значения N;
- StrToFloat(const Str: String): Extended - строка Str преобразуется в вещественное число;
- FloatToStr(F : Extended) : String - значение вещественного числа F преобразуется в строку;
- Trim(const: Str: String) : String - в начале и в конце строки Str удаляются пробелы;
- TrimLeft(const: Str: String) : String - в строке Str удаляются начальные пробелы;
- TrimRight(const: Str: String) : String - в строки Str удаляются конечные пробелы;
- AnsiLowerCase(const Str: string): string - возвращает Str (строку) в нижнем регистре;
- AnsiUpperCase(const Str: string): string - возвращает Str (строку) в верхнем регистре;
- StrToData(const Str : String): TDateTime - строка Str преобразуется в дату;
- StrToTime(const Str : String): TDateTime - строка Str преобразуется во время;
- DateToStr(Data : TDataTime) : String - значение Data (даты) преобразуется в строку;
- TimeToStr(Time : TDataTime) : String - значение Time (времени) преобразуется в строку.
Пример строковых выражений:
'текст ' + Str; 'Итог равен ' + FloatToStr(F);
Где Str -переменная строкового типа, а F - вещественного.
Итог: мы ознакомились с основными функциями для работы со строковыми выражениями.