Функции для работы с текстовой информацией
Приведем основные встроенные функции, позволяющие работать с текстовой информацией.
Функция | Описание |
StrToInt | Преобразует строку в целое. |
IntToStr | Преобразует целое в строку. |
FloatToStr | Преобразует плавающее число в строку. |
StrToFloat | Преобразует строку в плавающее.число |
StrToDate | Преобразует строку в дату. |
DateToStr | Преобразует дату в строку. |
Length | Возвращает длину символьной строки. |
Copy | Возвращает подстроку из строки. |
Insert | Вставить подстроку в нужную позицию строки |
Delete | Удаляет подстроку из строки. |
Pos | Возвращает позицию подстроки в строке. |
Ord | возвращает код для введенного символа |
Chr | Возвращает символ по его коду |
UpperCase | Преобразует строку к верхнему регистру букв. |
LowerCase | Преобразует строку к нижнему регистру букв. |
Пример 1. Функция chr возвращает символ по его коду. Синтаксис:
function Chr(X: Byte): Char;
Например, создадим небольшое приложение, которое по коду символа выводит его представление. Внешний вид формы может быть следующим:
На кнопку “Ввод” напишем обработчик:
var kod:integer;
begin
kod:=StrToInt(Edit1.Text);
label2.caption:=' Символ = '+ chr(kod);
Пример 2. Функция ord возвращает код символа для введенного символа. Синтаксис функции:
function Ord(X);
Например, разработаем приложение, которое по введенному символу будет возвращать его код. Внешний вид приложения:
На кнопку «Ввод» напишем обработчик:
var
kod:integer;
ch:char;
str:string[1];
begin
str:=Edit1.Text;
ch:=str[1];
kod:=ord(ch);
Label2.Caption:='Код символа = '+IntToStr(kod);
end;
Задания для самостоятельной работы
- Дано арифметическое выражение в виде строки символов. Определить:
- Сколько раз в этом выражении встречается символ ‘+’, ’-‘, ’*’, ‘/’
- Сколько всего символов
- Дан русский текст, максимальная длина которого 255 символов.
- Определить число слов в тексте, если слово это набор символов, ограниченный пробелами слева и справа.
- В этом тексте заменить все вхождения слова «Маша» на слово «Саша».
- Подсчитать сколько раз в тексте встречается каждая буква русского алфавита.
- Введите строку русскими строчными буквами. Преобразуйте введенные строчные буквы в прописные и выведите строку.
- Зашифровать введенный текст, заменив каждый символ, стоящий через один от данного символа, в таблице кодировки. Исходное разбиение на строки должно быть сохранено.
- Ввести строку, состоящую из строчных русских букв. Преобразовать строку в прописные русские буквы.
- Проверить, является ли введенная строка числом.
- Вывести на экран 1-ю часть таблицы перекодировки ( от 0 до 128).
- Напишите программу-телеграф, которая принимает от пользователя сообщение и выводит его на экран в виде последовательности точек и тире. Вывод точек и тире можно сопроводить звуковым сигналом соответствующей длительности. Азбука Морзе для букв русского алфавита приведена ниже:
А "-." Б "-..." В ".---" Г "--."
Д "-.." Е " " Ж "...-" З "--.."
И ".." Й ".---" К "-.-" Л ".-.."
М "--" H "-." О "---" П ".--."
Р ".-." С "..." Т "-" У "..-"
Ф "..-." Х "...." Ц "-.-." Ч "---."
Ш "----" Щ "--.-" Ъ "-..-" Ы "-.--"
Ь "-..-" Э "..-." Ю "..--" Я ".-.-"
Контрольные вопросы
- С помощью какого типа данных можно представить один символ данных?
- Как описать символ данных?
- Как присвоить символу нужное значение?
- Что такое строка данных? Как описать строку данных?
- Каков максимальный размер строки?
- Как описать строку нужного размера?
- Как строке присвоить значение?
- Какие функции для работы с текстовыми данными Вы знаете?