Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
системный анализ и управление.doc
Скачиваний:
0
Добавлен:
01.07.2025
Размер:
613.89 Кб
Скачать

Операции со строками

Слияние

Чаще всего используется операция слияния строк, для чего применяют знак сложения (+):

var

S1 : string;

S2 : string;

begin

S1 := 'Аппаратура;

S2 := 'работает нормально';

Label1.Caption := S1 + ' ' + S2;

end;

Последний оператор этого кода выполняет слияние трех строк – переменной S1, литерала «пробел» и переменной S2. Результат слияния присваивается свойству «заголовок» (Caption) компонента формы типа «надпись».

В операции слияния строк могут присутствовать любые выражения строкового типа, например:

var

X : Integer;

begin

X := 70;

Label1.Caption := IntToStr(X)+ ' секунд – полет нормальный';

end;

Здесь функция IntToStr преобразует числовое значение переменной X в строку, а результат соединяется с литералом.

Извлечение символа

Нумерация символов в строке ведется с единицы. Любой символ строки доступен по его порядковому номеру (индексу) в строке:

var

S1 : string;

S2 : Char;

begin

S1 := 'Hello World!';

S2 := S1[1];

Label1.Caption := S2;

end;

Управляющие символы в строках

В строку можно включить управляющие символы.

Поместите на форму командную кнопку и надпись. Дважды щелкните на кнопке и введите следующий код обработчика события OnClick:

p rocedure TForm1.Button1Click (Sender: TObject);

var

Line1 : string;

Line2 : string;

Y : integer;

begin

Y := 50;

Line1 := IntToStr(Y) +  секунд;

Line2 := Полет нормальный;

Label1.Caption := Line1 + #10 + Line 2;

end;

Выполните программу – увидите две строки надписи. В этом коде в строку вставлен символ возврата каретки (код ASCII 10).

Разбиение литерала по строкам программы

Часто бывает необходимо разместить длинный литерал на нескольких строках текста программы. Например, требуется вывести сообщение, содержащее 200 символов. Максимальная длина одной строки текста в редакторе кода равна 1024 символам. На экране целиком умещается около 80 символов текста в одной строке. Следовательно, напечатать длинный текст в одной строке редактора можно, но читать его – с трудом.

Лучше всего разбить длинный текст – литерал на несколько строк исходной программы. Для этого просто используйте операцию слияния (+)

MessageBox(0, 'Файл изменен, но не был сохранен. ' +

'Сохранить его сейчас ' +

'или снова вернуться в режим редактирования? ',

'Message', 0);

Сравнение строк

Строки можно сравнивать друг с другом с помощью операций сравнения. Операции сравнения перечислены в таблице 1.3.

Таблица 1.3. Операции сравнения строк

Операция

Описание

=

Равно

<>

Не равно

<

Меньше

>

Больше

<=

Не больше

>=

Не меньше

Сравнение строк основано на анализе кодов ASCII. Две строки считаются равными если они имеют одинаковую длину и содержат одинаковые последовательности символов. Операции «меньше – больше» используют для сортировки строк в алфавитном порядке. Чаще всего в программах применяется операции «равно – не равно»:

if FileName = 'TEST.TXT' then

OpenFile(FileName)

else

ReportError;