Pascal'da bir dizgenin (alt dize) bölümünü seçebilirsiniz. Bunun için kopyalama işlemi kullanılır.
İşlemin genel şekli şu şekildedir:
s1 := kopya(lar, dizin, sayı);
Bu komut dizinindeki karakterden başlayarak s dizesinden bir dilim alır, index of length count.
Örneğin,
s1 := kopya(lar, 3, 5);
Dizin, dizenin uzunluğundan büyükse, boş bir dize döndürülür. İndeksten başlayan sayma karakterleri, dizgenin uzunluğundan daha uzunsa, dizinden başlayıp biten s dizisi döndürülür.

Ve işte bir diziyi tersine çevirmenin ne kadar kolay olduğu:
s := '0123456789';
s1 := tersDize(ler); // s1 = '0123'

Bir dizenin bir bölümünü silmek için, delete(s, firstIndex, count) yöntemini kullanmanız gerekir: s dizisinden 'den başlayarak count karakteri kaldırır. ilk Dizin
s := '0123456789';
sil(ler, 4, 6); // s1="0129"

Bir dizgenin bir bölümünü kopyalamak için copy(s, index, count) yöntemini kullanabilirsiniz - bu, indexs dizisinin bir bölümünü döndürür güçlü> ve uzunluk sayı
 

s := '123456789';
s1 := kopya(lar, 3, 4); // s1 = '3456'

Pascal'ın dizelerle çalışmak için pek çok yordamı vardır.  Birçoğu nokta gösterimi kullanılarak çağrılır ve yöntemler olarak adlandırılır. Dize işleme yöntemlerinin tam listesi çevrimiçi olarak bulunabilir. 
Bazıları ile tanışalım.
s := 'aAbBcC'
sUp := büyük harf(ler); // sUp = "AABBCC" - bir dizenin her karakterini büyük harfe çeviren bir yöntem
sLow := küçük harf(ler) // sLow = "aabbcc" - bir dizenin her karakterini küçük harfe çeviren bir yöntem
Yöntem her zaman parantez içinde yazılır. Gerekirse parantez içinde bazı parametreler vardır.

Başka bir yararlı yöntem  - val(s, v, ind) - bir dizideki tüm karakterlerin rakam olup olmadığını kontrol etme yöntemi. s - kaynak dize, kaynak dize bir sayıysa v bir sayı içerir ve aksi takdirde 0, ind ilk sayıyı içerir < güçlü> dizin s, rakam değilse veya s bir sayıysa 0.
s := 'ab1c'
val(s, v, ind);
writeln(v, ' ', ind); // 0 3
s := '123';
val(s, v, ind);
w(vriteln, ' ', ind); // 123 0
Yararlı trim(s) - yöntemi, bir dizenin başındaki ve sonundaki boşlukları kaldırmanıza olanak tanır
:= ' ab 1c ';
print('s=', trim(ler)); // s=ab 1c

Pascal'da bir dize içinde arama yapmak için pos() yöntemini kullanın.
Dizideki alt dizenin 1. geçtiği dizinin dizinini döndürür:
pos(originalString, smallString) - originalString smallString

içinde görünüyor

Alt dize bulunamadığında, yöntem 0 döndürür:

hoşgeldiniz := 'Merhaba dünya! Güle güle dünya!';
dizin := konum(hoş geldiniz, 'çalışıyor');
writeln(dizin); // 7

indeks := konum(hoş geldiniz, 'güneş');
writeln(dizin); // 0

Lütfen dikkat: bu yöntemler tekrar sayısına bakmaz, sadece dizide böyle bir alt dize olup olmadığını belirler. .

Pascal'da, bir dizede bir alt dizeyi diğeriyle değiştirmek için stringReplace()
yöntemini kullanın stringReplace(original, old, new, flag): originalString  alt dize eski şu şekilde değiştirilir: yeniflag rfReplaceAll veya rfIgnoreCase, değerlerinden biridir köşeli parantez içine yazılır. İlk durumda, eski 'nin originalStringiçindeki tüm oluşumları, ikincisinde, yalnızca birincisinde.

Pascal dizi değiştirme örneği:
 

telefon = '+1-234-567-89-10'

// tireler boşluk olarak değiştirildi
edited_phone := stringreplace(telefon, '-', ' ', [rfReplaceAll]);
writeln(edited_phone); // +1 234 567 89 10

// tireler kaldırıldı
edited_phone := stringreplace(telefon, '-', '', [rfReplaceAll]);
writeln(edited_phone); // +12345678910

// sadece ilk çizgi değişir
edited_phone := replace(telefon, '-', '', [rfIgnoreCase]);
writeln(edited_phone); // +1234-567-89-10