Пусть S, S1, S2, sk - выражения строкового типа; poz, n, code - целого типа.
1. Length(S): integer; - вычисляет длину строки S в символах;
2. Concat(s1, s2,…,sk):string; - выполняет объединение строк s1, s2, …sk;
3. Copy(s, poz, n):string: - выделяет из строки S подстроку , начиная с позиции pozл длиной n;
4. Pos(s1, s2):byte; - отыскивает первое появление в строке s2 подстроки s1. Результатом работы этой функции становится номер (индекс) позиции в строке s2, с которой начинается строка s1. Если результат равен 0, то подстрока не найдена.
Строковые процедуры
1. Delete(S, poz, n); - удаляет из строки S n символов, начиная с позиции poz;
2. Insert(S1, S2, poz): - вставляет строку S1 в строку S2, начиная с позиции poz;
3. Str(v, S):- преобразует числовое значение v в строковое представление; если v – целое число, то может быть указано общее число символов 1, например str(v:1:s); если v принимает вещественное значение, то дополнительно может быть указано число m символов после десятичной точки, например str(v:1:m:s);
4. Val(S,v,code); - преобразует строку S в число, и переменной v присваивается это числоn; тип числа зависит от типа переменной v – целый или вещественный. Если такое преобразование выполнено успешно, то переменной code присваивается значение 0, в противном случае code содержит номер позиции первого ошибочного символа.
Пример.
Пусть st - строка типа string[6] и st=’klmn’, S – строка string[5]. x - переменная целого типа, fs – строкового типа.
Функция
Результат
X:=Leght(st)
Fs:=copy(st,2,2)
‘lm’
X:=pos(‘mn’,st)
Процедура
Результат
Delete(st,1,1)
‘lmn’
Insert(‘ab’,st,1)
‘abklm’
Str(15,s)
‘15’
Val(‘-3’, x, code)
-3 0
Пример.Дано слово ’золотопромышленник’, из которого постройте слова ’золото’, ’промышленник’, ’пленник’, ’мышление’, используя процедуры и функции обработки строк.