Delete (Str,Poz,N) — удаление N символов строки Str, начиная с позиции Poz. Если значение Poz > 255, возникает программное прерывание.
Например:
Значение Str
Выражение
Результат
'абвгде'
'река Волга'
Delete(Str, 4, 2);
Delete(Str, 1, 5);
'абве'
'Волга'
Insert (Strl, Str2, Роz) –вставка строки Str1 в строку Str2, начиная с позиции Poz.
Например:
Var
Sl, S2 : string[ll] ;
…
S1 := ' ЕС ';
S2 := 'ЭВМ1841';
Insert(S1,S2,4) ;
В результате выполнения последнего выражения значение строки S2 станет равным 'ЭВМ ЕС 1841'.
Str (IBR,St) — преобразование числового значения величины IBR и помещение результата в строку St. После IBR может записываться формат, аналогичный формату вывода. Если в формате указано недостаточное для вывода количество разрядов, поле вывода расширяется автоматически до нужной длины.
Например:
Значение IBR
Выражение
Результат
4.8Е+03
Str(IBR:6,St)
Str(IBR:10,St)
Str(-IBR:3,St)
'_1500'
'____4800'
'—76854'
Val (St,IBR,Code) — преобразует значение St в величину целочисленного или вещественного типа и помещает результат в IBR. Значение St не должно содержать незначащих пробелов в начале и в конце. Code — целочисленная переменная. Если во время операции преобразования ошибки не обнаружено, значение Code равно нулю, если ошибка обнаружена (например, литерное значение переводится в цифровое), Code будет содержать номер позиции первого ошибочного символа, а значение IBR не определено.
Например:
Значение St
Выражение
Результат
'1450'
'14.2Е+02'
'14.2А+02
Val(St,IBR,Cod) Val(St,lBR,Cod) Val(St,IBR,Cod)
Code=0
Code=0
Code=5
Copy (St,Poz,N) — выделяет из строки St подстроку длиной N символов, начиная с позиции Poz. Если Poz > Length(St), то результатом будет пробел; если Poz > 255, возникнет ошибка при выполнении. Функция Length описана ниже. Poz, N — целочисленные выражения.
Например:
Значение St
Выражение
Результат
'ABCDEFG' 'ABCDEFG'
Copy(St, 2, 3) Copy(St, 4, 10)
'BCD'
'DEFG'
Concat (Strl,Str2,...,StrN) — выполняет сцепление строк Strl, Str2,..,StrN в том порядке, в каком они указаны в списке параметров. Сумма символов всех сцепленных строк не должна превышать 255.
Например:
Выражение
Результат
Concat('AA','XX','Y')
Соnсаt('Индекс','394063')
'AAXXY' 'Индекс 394063'
Length (St) — вычисляет текущую длину в символах строки St. Результат имеет целочисленный тип.
Например:
Значение St
Выражение
Результат
'123456789' 'System 370'
Length(St) Length(St)
Pos (Strl,Str2) — обнаруживает первое появление в строке Str2 подстроки Strl. Результат имеет целочисленный тип и равен номеру той позиции, где находится первый символ подстроки Strl. Если в Str2 подстроки Strl не найдено, результат равен 0.
Например:
Значение Str1
Выражение
Результат
'abcdef '
'abcdef'
Pos('de',Strl) Pos('r',Strl)
UpCase (Ch) — преобразует строчную букву в прописную. Параметр и результат имеют литерный тип. Обрабатывает буквы только латинского алфавита.
Значение Ch
Выражение
Результат
'd'
UpCase(Ch)
'D'
В целом, работу со стандартными строковыми процедурами и функциями можно свести в следующую таблицу:
Процедура/Функция
Описание
Delete (St,Poz,N)
Удаление N символов строки St, начиная с позиции Poz
Insert (Str1,Str2,Poz)
Вставка строки Str1 в строку Str2, начиная с позиции Poz
Str (IBR, St)
Преобразование числового значения величины IBR и помещение результата в строку St
Val (St,IBR,Cod)
Преобразует значение St в величину целочисленного или вещественного типа и помещает результат в IBR. Значение St не должно содержать незначащих пробелов в начале и в конце. Cod - целочисленная переменная, в которой содержится 0, если ошибки не обнаружено, и номер позиции первого ошибочного символа, если произошла ошибка. Значение IBR в этом случае не определено.
Copy (St,Poz,N)
Выделяет из строки St подстроку длиной N символов, начиная с позиции Poz.Poz N-целочисленные выражения
Concat (Str1,Str2,…,StrN)
Выполняет сцепление строк Str1,Str2,…,StrN в том порядке, в каком они указаны в списке параметров.
Length (St)
Вычисляет текущую длину в символах строки St.Результат имеет целочисленный тип.
Pos(Str1,Str2)
Обнаруживает первое появление в строке Str2 подстроки Str1. Результат имеет целочисленный тип и равен номеру той позиции, где находится первый символ подстроки Str1.Если в Str2 подстроки Str1 не найдено, то результат равен нулю.
UpCase (Сh)
Преобразует строчную букву в прописную. Параметр и результат имеют литерный тип.
Пример программы работы со стандартными строковыми процедурами и функциями
1. Program DemoString;
2. Uses Crt;
Var
4. Stroka:String[80];
5. Str1,Str2,Str3:String[20];
6. Search_Str:String[20];
7. Poz:byte;
Begin
9. Stroka:='ПРИВЕТ';
10. Writeln(Stroka);
11. Str1:=Copy(Stroka,2,3);
12. Writeln(Str1);
13. Writeln('Слово ПРИВЕТ состоит из',Length(Stroka):3,' букв');