Функции обработки строк
Лекции по паскаль, Строки.
Строка – это последовательность символов кодовой таблицы персонального компьютера. При использовании в выражениях строка заключается в апострофы. Количество символов в строке (длина строки) может динамически изменяться от 0 до 255. Для определения данных строкового типа используется идентификатор string, за которым следует заключенное в квадратные скобки значение максимально допустимой длины строки данного типа. Если это значение не указывается, то по умолчанию длина строки равна 255 байт.
Данные строкового типа могут быть объявлены в разделе описания типов или непосредственно в разделе описания переменных. Строковые данные могут использоваться в программе также в качестве констант.
Формат:
type
<имя_типа>=string[макс. длина строки];
var
<идентификатор,…>:<имя_типа>;
< идентификатор,…> : string[макс. длина строки];
Пример:
Const
Address=’ул. Переверткина, 25’;
type
Flot=string[125];
var
Fstr:Flot;
St1:string;
St2,St3:string[50];
Nazv:string[280]; // ошибка
Строка в языке Паскаль трактуется как цепочка символов. (Для строки из N символов отводится N+1 байт; N байт – для хранения символов строки, а один байт – для значения текущей длины строки.)
Функции обработки строк
При работе со строками, как правило, возникает необходимость выполнять их копирование, вставку, удаление или поиск. Для эффективной реализации этих действий в Паскале предусмотрены стандартные процедуры и функции.
Функция Concat (s1, s2, ..., sn) возвращает строку, являющуюся слиянием строк s1, s2, ..., sn.
Функция Copy (s, start, len) возвращает подстроку длиной len, начинающуюся с позиции start строки s.
Процедура Delete (s, start, len) удаляет из строки s, начиная с позиции start, подстроку длиной len.
Процедура Insert (subs, s, start) вставляет в строку s подстроку subs, начиная с позиции start.
Функция Length (s) возвращает фактическую длину строки s, результат имеет тип byte.
Функция Pos (subs, s) ищет вхождение подстроки subs в строку s и возвращает номер первого символа subs в s или нуль, если subs не содержится в s.
Процедуры преобразования типов
Процедура Str (x, s) преобразует числовое значение x в строку s, при этом для x может быть задан формат, как в процедурах вывода write и writeln.
Процедура Val (s, x, errcode) преобразует строку s в значение числовой переменной x, при этом строка s должна содержать символьное представление числа. В случае успешного преобразования переменная errcode равна нулю. Если же обнаружена ошибка, то errcode будет содержать номер позиции первого ошибочного символа, а значение x не определено.
В дополнение приведем некоторые функции, связанные с типом char, но которые тем не менее часто используются при работе со строками.
Chr(n: byte): char
Функция возвращает символ по коду, равному значению выражения n. Если n можно представить как числовую константу, то можно также пользоваться записью #n.
Ord(ch: char): byte; Функция возвращает код символа ch.
UpCase(c: char): char;
Если c - строчная латинская буква, то функция возвращает соответствующую прописную латинскую букву, в противном случае символ c возвращается без изменения.
<== предыдущая лекция | | | следующая лекция ==> |
Процедуры и функции пользователя. | | | Операции над множествами. Описание типа множества. |
Дата добавления: 2016-02-02; просмотров: 1125;