在 Pascal 中,您可以选择字符串的一部分(substring)。为此,使用了复制操作。
操作的一般形式如下: <前> s1 := copy(s, index, count); 此命令从字符串 s 中获取一个切片,从索引 index of length count 处的字符开始。
例如, <前> s1 := 复制(s, 3, 5); 如果索引大于字符串的长度,则返回一个空字符串。如果从 index 开始的 count 个字符比字符串的长度长,则返回从 index 开始到结束的字符串 s。

反转字符串是多么容易: <前> 小号:=“0123456789”; s1 := reverseString(s); // s1 = '0123'

要删除字符串的一部分,需要使用 delete(s, firstIndex, count) 方法:它从字符串 s 中删除 count 个字符,从 开始第一个索引 <前> 小号:=“0123456789”; 删除(s, 4, 6); // s1="0129"

要复制字符串的一部分,您可以使用 copy(s, index, count) 方法 - 它会返回字符串 s 的一部分,从索引 index 和长度 count
 

<前> 小号:=“123456789”; s1 := 副本(s, 3, 4); // s1 = '3456';

Pascal 有许多处理字符串的例程。 其中许多调用使用点符号,称为方法。可以在线找到完整的字符串操作方法列表。 
让我们熟悉其中的一些。 <前> s := 'aAbBcC' sUp := 大写; // sUp = "AABBCC"; - 将字符串的每个字符转换为大写的方法 sLow := lowercase(s) // sLow = “aabbcc”; - 将字符串的每个字符转换为小写的方法 该方法始终用括号书写。括号内有一些参数,如果需要的话。

另一个有用的方法  - val(s, v, ind) - 检查字符串的所有字符是否都是数字的方法。 s - 源字符串,如果源字符串是数字,则 v 包含一个数字,否则为 0,ind 包含第一个 < strong> 索引 s 不是数字,如果 s 是数字则为 0。 <前> s := 'ab1c' val(s, v, ind); writeln(v, ' ', ind); // 0 3 小号:=“123”; val(s, v, ind); w(vriteln, ' ', ind); // 123 0 有用的 trim(s) - 方法允许您删除字符串开头和结尾的空格 <前> 小号 := ' ab 1c '; 打印('s=',修剪(s)); // s=ab 1c

要在 Pascal 中搜索字符串,请使用 pos() 方法。
它返回字符串中子字符串第一次出现的索引:
pos(originalString, smallString) - 查找 originalString smallString

当没有找到子串时,该方法返回0:

<前> 欢迎 := '世界,您好!再见世界!' index := pos(欢迎, 'wor'); writeln(索引); // 7 索引:= pos(欢迎,“太阳”); writeln(索引); // 0
请注意:这些方法不查找出现的次数,而只是判断字符串中是否有这样的子串.

在 Pascal 中,要用字符串中的一个子字符串替换另一个子字符串,请使用 stringReplace()
方法 stringReplace(original, old, new, flag): originalString  substring old 被替换为newflag 是 rfReplaceAll 或 rfIgnoreCase, 值之一写入方括号。在第一种情况下,所有出现的 old 进入 originalString, 在第二种情况下,只有第一种。

Pascal 字符串替换示例:
 

<前> 电话 = '+1-234-567-89-10' // 连字符变为空格 edited_phone := stringreplace(phone, '-', ' ', [rfReplaceAll]); writeln(edited_phone); // +1 234 567 89 10 // 连字符被删除 edited_phone := stringreplace(phone, '-', '', [rfReplaceAll]); writeln(edited_phone); // +12345678910 // 只有第一个破折号改变 edited_phone := replace(phone, '-', '', [rfIgnoreCase]); writeln(edited_phone); // +1234-567-89-10