ВУЗ:
Составители:
Рубрика:
55
К элементам символьных переменных могут быть применены такие
функции, как:
Таблица 1. Стандартные функции для литерного типа.
Функция: тип
Назначение
Chr(x:byte):chr
Ord(C:char):byte
Pred(C:char):char
Succ(C:char):char
UpCase(C:char):char
Возвращает символ ASCII – кода х
Возвращает код символа С
Выдаёт предшествующий С символ
Выдаёт последующий за С символ
Перевод символа ′a′. .′z′ в верхний регистр.
Стандартные процедуры и функции для
обработки строк
Таблица 2. Стандартные процедуры и функции.
Процедуры и функции Назначение
Length(s:string):byte
Concat(s1, s2, . . .,sn):string
Copy(S:string;start, len:integer):string
Delete
(var S:string; start, len:byte )
Insert(Subs:string,var S:string;
start:integer)
Pos(Subs, s:string):byte
Str(Х[:F[:n]];var S:string)
Val(S:string;var x; var ErrCode:integer)
Выдаёт текущую длину строки
Слияние строк s1. . .s
n
Возвращает подстроку длиной len,
на-чинающуюся с позиции start
строки S.
Удаляет из S подстроку длиной len,
начинающуюся с позиции start строки
S.
Вставляет в S подстроку Subs,
начиная с позиции start.
Ищет первое вхождение подстроки
Subs в строке S и возвращает номер
первого символа Subs в S или 0, если
S не содержит Subs.
Преобразует числовые значения Х в
строковое S. Возможно задание
формата для Х
.
Преобразует строковое значение S
(строку цифр) в значение числовой
переменной Х.
56
Функции и процедуры для редактирования строк
1.
Функция Length(S:String) возвращает текущую длину строки S.
Вообще говоря, можно вместо неё пользоваться конструкцией Ord(S[0]), что
то же самое.
2. Функция Concat производит слияние переданных в неё строк.
Количество строк произвольно. Вместо неё всегда можно использовать
операцию «+», которая работает эффективнее.
Например:
var S, S1, S2:string;
begin
S1:=′начало′; S2:=′конец′;
writeln(concat(S1,S2));
end.
Вместо этого:
S:=S1+S2;
writeln(S);
Если сумма длин строк в Concat превысит максимальную длину
строки в левой части присваивания, то излишек будет отсечён справа.
3. Функция Copy(S:string;Start,Len:byte) возвращает подстроку
длиной в Len символов, начиная с символа Start. Если Start больше длины
всей строки S, то функция вернёт пустую строку, а если Len больше, чем
число символов от Star до конца строки S, то вернётся остаток строки S от
Start до конца.
Например:
var S1, S2, S3:string;
begin
S1:=′ABC***123′;
writeln (copy(S1,4,3)); {будет печатать «***»}
S2:= copy(S1, 10, 2);
writeln(S2); {будет печатать пустую строку}
writeln(copy(S1, 2, 5)); {будет печатать «
ВС***»}
end.
4. Процедура Delete(VAR S:string; Start,Len:Byte) – удаление части
строки. Видоизменяет строку S, стирая Len символов, начиная с символа с
номером Start:
S:=′СТРОКА′;
Delete(S, 2, 4); writeln(S); {будет печатать «СА»}
К элементам символьных переменных могут быть применены такие Функции и процедуры для редактирования строк
функции, как:
1. Функция Length(S:String) возвращает текущую длину строки S.
Таблица 1. Стандартные функции для литерного типа. Вообще говоря, можно вместо неё пользоваться конструкцией Ord(S[0]), что
Функция: тип Назначение то же самое.
2. Функция Concat производит слияние переданных в неё строк.
Chr(x:byte):chr Возвращает символ ASCII кода х
Возвращает код символа С Количество строк произвольно. Вместо неё всегда можно использовать
Ord(C:char):byte
Pred(C:char):char Выдаёт предшествующий С символ операцию «+», которая работает эффективнее.
Succ(C:char):char Выдаёт последующий за С символ Например:
UpCase(C:char):char Перевод символа ′a′. .′z′ в верхний регистр. var S, S1, S2:string;
begin
S1:=′начало′; S2:=′конец′;
writeln(concat(S1,S2));
end.
Стандартные процедуры и функции для
Вместо этого:
обработки строк S:=S1+S2;
writeln(S);
Таблица 2. Стандартные процедуры и функции. Если сумма длин строк в Concat превысит максимальную длину
Процедуры и функции Назначение строки в левой части присваивания, то излишек будет отсечён справа.
Length(s:string):byte Выдаёт текущую длину строки
3. Функция Copy(S:string;Start,Len:byte) возвращает подстроку
Concat(s1, s2, . . .,sn):string Слияние строк s1. . .sn длиной в Len символов, начиная с символа Start. Если Start больше длины
Copy(S:string;start, len:integer):string Возвращает подстроку длиной len, всей строки S, то функция вернёт пустую строку, а если Len больше, чем
на-чинающуюся с позиции start число символов от Star до конца строки S, то вернётся остаток строки S от
строки S. Start до конца.
Delete(var S:string; start, len:byte ) Удаляет из S подстроку длиной len,
Например:
начинающуюся с позиции start строки
S. var S1, S2, S3:string;
Insert(Subs:string,var S:string; Вставляет в S подстроку Subs, begin
start:integer) начиная с позиции start. S1:=′ABC***123′;
Pos(Subs, s:string):byte Ищет первое вхождение подстроки writeln (copy(S1,4,3)); {будет печатать «***»}
Subs в строке S и возвращает номер S2:= copy(S1, 10, 2);
первого символа Subs в S или 0, если writeln(S2); {будет печатать пустую строку}
S не содержит Subs. writeln(copy(S1, 2, 5)); {будет печатать «ВС***»}
Str(Х[:F[:n]];var S:string) Преобразует числовые значения Х в end.
строковое S. Возможно задание 4. Процедура Delete(VAR S:string; Start,Len:Byte) удаление части
формата для Х. строки. Видоизменяет строку S, стирая Len символов, начиная с символа с
Val(S:string;var x; var ErrCode:integer) Преобразует строковое значение S
номером Start:
(строку цифр) в значение числовой
переменной Х. S:=′СТРОКА′;
Delete(S, 2, 4); writeln(S); {будет печатать «СА»}
55 56
Страницы
- « первая
- ‹ предыдущая
- …
- 26
- 27
- 28
- 29
- 30
- …
- следующая ›
- последняя »
