После удаления текущая длина строки автоматически уменьшается.
Процедура Delete
Процедуры обработки строк
Функция Copy
Функция Pos
Функция Length
Функции обработки строк
Length(S : string):integer;
У этой функции один параметр (S) – выражение строкового типа. Значение функции – целое число – количество символов, из которых составлена строка.
Пример
i:= length('Peace'); // i=5
Функция Pos позволяет определить номер позиции первого вхождения символа или подстроки в строку.
Pos(SubString : string; S : string):byte;
где SubString – строковая константа или переменная (подстрока), которую надо найти в строковой константе или переменной S. Например:
st:='City Odessa!';
i:=Pos('ty', 'City Odessa'); //i=3
Если в строке нет пподстроки, то значение функции Pos будет равняться нулю.
Функция Copy позволяет скопировать подстроку в новую строку (выделить фрагмент строки).
Copy (S : string; Index : integer; Count : integer):string;
где
S – выражение строкового типа;
Index – номер первого символа, с которого начинается выделяемая подстрока;
Count – длина выделяемой подстроки.
Например:
st:='City Odessa!';
st:=Copy(s, 6, 6); // st='Odessa'
Процедура Delete позволяет удалить часть строки (определенное количество символов). Delete( var S : string, Index : integer, Count : integer);
где
S – переменная или константа символьного типа;
Index – номер символа, с которого начинается удаляемая подстрока;
Count – длина удаляемой подстроки (количество символов которые надо удалить).
Например:
st:='City Odessa!';
delete (st, 1, 5); // st='Odessa!’
Символы располагавшиеся по правую сторону от зоны удаления, автоматически переставляются на позиции удаленных символов.
Вставка символов реализуется операцией Insert
Insert(Source : String; var S : string; Index :iteger);
где Source – строка, которая вставляется в другую строку;
S – строка, куда осуществляется вставка;
Index – номер позиции, с которой начинается вставка.
После выполнения вставки длина строки автоматически увеличивается.
Если вставка осуществляется в середину строки, то место для подстроки высвобождается за счет сдвига.
st:=’City Odessa!’; //Текущая длина 12
Insert (‘My ’, st, 1); // st=’My City Odessa!’ // Текущая длина 15
Если текущая длина строки оказалась больше общей длины, то те символы не доступны. Т.е., если общая длина строки s была 13 (var s : string[13]), то подстрока из двух символов 'a!' не будет доступна.