Работа с BDE в Delphi 11 |
Символьные типы данных
Функции работы со строками
Используя операции сравнения =, <, >, <=, >= строки можно сравнивать между собой. При этом большей считается та строка, в одинаковой позиции которой находится символ с большим кодом. Если все символы одинаковы, строки считаются равными. Примеры:
Строка 1 | Строка 2 | Результат сравнения |
---|---|---|
Иванов | Иванов | Строки равны |
васильев | Васильев | Строка 1 > Строки 2 |
Алексеев | Петров | Строка 1 < Строки 2 |
Иванова | Иванов | Строка 1 > Строки 2 |
Строки часто приходится обрабатывать: удалять или заменять часть строки, определять количество символов в строке, определять, находится ли в строке искомый текст, и так далее. Ниже приведены функции, которые позволят совершать со строкой все необходимые действия.
Length()
Очень полезная, и часто используемая функция. Она возвращает длину строки (количество символов). Примеры использования:
Var s : String; i : Integer; begin s := ‘Иванов’; i := Length(s); //результат – 6 i := Length(‘Иванова’); // результат - 7
Процедура Delete
Процедура принимает в качестве параметра строку и удаляет какую-то ее часть. Синтаксис процедуры такой:
Delete(Строка, p, n);
Где:
- Строка – переменная строкового типа.
- p – номер символа, с которого начинается удаление.
- n – количество удаляемых символов.
Пример использования:
s := 'Город Санкт-Петербург'; Delete(s, 7, 6);
В результате выполнения данного кода в строке s останется текст "Город Петербург".
Функция Pos()
Функция находит подстроку Substr в строке S и возвращает индекс первого символа найденной подстроки. Если S не содержит указанную подстроку, то функция возвращает 0:
Функция Pos ( Substr: string, S: string ): Integer;
Пример использования:
var S: string; I: Integer; begin S:= 'В лесу родилась елочка'; I:= Pos( 'лес', S); // I = 3 end;
Функция Copy()
Функция возвращает подстроку размером Count символов, начиная с символа Index. Параметр S – передаваемая в функцию строка; Index и Count – целые числа. Если Index больше длины строки, то функция возвращает пустую строку. Если значение параметра Count больше, чем может быть возвращено функцией, то возвращаются символы или элементы, начиная с Index и до конца S.
Функция Copy ( S, Index, Count ): string;
Пример использования:
var S: string; begin S:= 'Победа'; S:= Copy( S, 3, 4); // S = 'беда' end;
На начальном этапе обучения этих функций вам будет вполне достаточно. С их помощью можно решить практически любую задачу по обработке символов и строк.