Опис змінних строкового типу у Паскале
 Змінні строкового типу повинні бути описані з використанням розділу описания або безпосередньо в розділі описания змінних
 - Type st =string[n]; 2. Var s :string[n];
 
Var s :st; 
 де st - ім'я типу;
  s - ім'я змінної;
 /strong> - розмір рядка (область пам'яті), кількість символів у рядку 
 (атрибут довжини n=1..255).
 Нульовий байт рядка містить інформацію про її фактичної довжині. 
 
 Операції з змінними строкового типу
 Над змінними строкового типу (стрінгами) можна виконувати наступні операції:
 - присвоювання (ввід/вивід);
 
 - порівняння
 
 - конкатенацію. 
 
 
Призначення у Паскале
 Перемененной типу String можна присвоїти значення інший змінної або строкової константи
 :St=’Студент’;
  Stu:St=;
 При цьому довжина строкової константи повинні бути не більше оголошеної в іншому випадку надлишкові символи будуть проігноровані. 
 Поповнення / вивід
 Перемененные типу Stringможна зчитувати з файлу або записувати у файл цілком або символи, тобто до кожного елементу рядка можна звертатися як до елемента масиву.
Readln(f, Str); 
 Writeln(f, Str); 
 For i:=1 to n do Readln(f, Str[i]); 
 For i:=1 to n do Writeln(f, Str[i]); 
 
 
Порівняння в Паскале
 Порівняння стрінгів проводиться за допомогою операцій відносини (=, <>, <, >, <=, >=) шляхом за парного порівняння двох символів різних стрінгів зліва на право (порівнюються їх числові подання таблиці кодів ASCII
 Два рядки рівні, якщо вони однакової довжини і складаються з однаковою послідовності символів.
 ‘a’<’b’ т. к. ORD(‘a’)<ORD(’b’)
 ‘a1’<’a2’ т. к. ORD(‘a1’)<ORD(’a2’)
 ‘ a’<’a ’ т. к. ORD(‘ ’)<ORD(’a’)
‘kom’<’com’ т. к. ORD(‘k’)<ORD(’c’)
 
Конкатенація (Зчеплення) в Паскале
 Конкатенація - ообъединение двох і більше рядків в одну. Операція позначається знаком ‘+’ і має більш високий пріоритет, ніж порівняння. Вона застосовується до стринговым змінним і констант. При цьому довжина строкової константи повинні бути не більше оголошеної в іншому випадку надлишкові символи будуть проігноровані.
 S:=St1+St2; 
  S:=’TURBO’+’PASCAL’; 
  R:=’5’+’.’+’5’; (R:=5.5)
 Існує набір процедур і функцій для роботи зі стоками. Основні з яких наведені в табл.
Таблиця 1
 
  
 п/ф  | 
 Запис  | 
 Призначення  | 
 Приклад  | 
 
 
 ф  | 
 Length(str)  | 
 Визначає фактичну довжину рядка.  | 
 Var Str :string[10]; 
 *** 
 Srt:=’ПЕТРОВ’; 
 L:=Length(str); (l=6)  | 
 
 
 ф  | 
 Concat(S1,...  | 
 Зчеплення рядків  | 
 S1:= ’ПЕТРОВ’; 
 S2:=Concat(S1,’Н. І.’)  | 
 
 
 ф  | 
 Pos(St1,Str)  | 
 Виявляє в рядку Str підрядок ST1 і видає номер позиції (к), з якої вона починається і 0, якщо рядок не знайдено   | 
 k=Pos:(‘55’,’1552’); (k=2) 
 k:=(Pos‘53’,’1552’); (k=0)  | 
 
 
 ф  | 
 Copy(Str,p,N)  | 
 Виділяє з рядка Str підрядок довжиною Nначиная з позиції P  | 
 s:=Copy(‘ПЕТРОВ’,4,3); 
 s:=’РІВ’  | 
 
 
 п  | 
 Delete(Str,p,N)  | 
 Видаляє з рядка Str, починаючи з позиції P, N символів  | 
 S:= ’ПЕТРОВ’; 
 Delete(S,5,2);  
 S:= ’ПЕТРО’;  | 
 
 
 п  | 
 Insert(Str1,Str,p)  | 
 Вставляє в рядок Str підрядок Str1 починаючи з позиції P, N символів  | 
 S:= ’ПЕТРОВ’; 
 Insert(S,’A’ ,7); 
 S:= ’ПЕТРОВА’;  | 
 
 
 п  | 
 Val(Str,N,k)  | 
 Перетворює стринг Str у число N. k-код перетворення  | 
 Val(‘30’,N,k); (N=30; k=0) 
 Val(‘3.0’,N,k);  
 (N=той же; k=2)  | 
 
 
 п  | 
 Str(N,Str)  | 
 Перетворює число N стринг в Str  | 
 Str(55,S);S:=’55’  | 
 
 
 Приклад 17.3.  Замінити під введеному тексті прізвище ІВАНОВ на ПЕТРОВ.
 
Текст програми
Program string1;
 Uses CRT;
 Var
 str :string;
 :pinteger;
 Begin
 ClrScr;
 { Writeln("Введіть рядок");
 Read(str);}
 str:=" Студент Іванов не відвідував лекції, 
 студент Іванов не склав іспит ";
 p:=Pos("€ў ®ў",str);
 While p>0 do
 Begin
 Delete(str,p,6);
("Insert ЏҐва®ў",str,p);
 p:=Pos("€ў ®ў",str);
 End;
 Writeln("Підсумок:");
 Writeln(str);
 Readln;
 End.
 
Результати роботи програми
Результат:
 Студент Петров не відвідував лекції, студент Петров не склав іспит