Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Лекции+Pascal.doc
Скачиваний:
31
Добавлен:
02.12.2018
Размер:
647.17 Кб
Скачать

8.1 Строковые выражения

Выражения, в которых операндами служат строковые данные, называются строковыми выражениями.

Над строковыми данными допустимы операции сцепления и операции отношения.

Операции сцепления (+) применяются для сцепления нескольких строк в одну результирующую строку.

Выражение

Результат

‘Группа ’+’2В’

‘Группа 2В’

‘А’+’Б’+’В’

‘АБВ’

Длина результирующей строки не должна превышать 255.

Операции отношения (=,<>,>,<,>=,<=) проводят сравнение двух строковых операндов и имеют более низкий приоритет, чем операция сцепления. Сравнение строк производится слева направо до первого несовпадающего символа, и та строка считается больше, в которой первый несовпадающий символ имеет больший номер в стандартной таблице обмена информацией.

Результат выполнения операций отношения имеет булевский тип (True, False)

Выражение

Результат

‘COSM1’>’COSM2’

True

‘akkord’>’AKKORD’

True

Если строки имеют различную длину, то считается, что более короткая строка меньше, чем более длинная.

Выражение

Результат

‘Принтер ’>’Принтер’

True

‘Река’=’Река’

True

Для присваивания строковой переменной результата строкового выражения используется оператор присваивания. Например:

Str1:=’Группа учащихся’;

Если значение переменной после выполнения оператора присваивания превышает по длине максимально допустимую при описании, все лишние символы справа отбрасываются.

Описание А

Выражение

Значение А

A: String[6];

A:=’Группа 2В’

‘Группа’

A: String[8];

A:=’Группа 2В’

‘Группа 2В’

Допускается смешение в одном выражении операндов строкового и литерного типа. Если при этом литерной переменной присваивается значение строкового типа, длина должна быть равна единице, иначе будет ошибка.

Пример:

VAR

Lit: Char;

St1: String[12];

St2: String[30];

Begin

Lit:=’Z’;

Str1:=’Отдел’;

Str2:=Str1+Lit;

….

К отдельным символам строки можно обратиться по номеру (индексу) данного символа в строке. Индекс записывается в квадратные скобки []. Например:

Str1[2] – доступ к букве “т”

Str1[0] – находится длина текущей длины строки.

8.2 Стандартные процедуры и функции для обработки строковых данных

Функции:

  1. LENGTH(ST)

Вычисляет длину строки ST в символах. Результат – целочисленный.

Значение St

Выражение

Результат

‘Функция’

LENGTH(St)

7

Решение задач без использования стандартных функций.

Для самостоятельного решения.

  1. В тексте имеется символ “:”. Вывести на экран все символы, расположенные после“:”.

  2. В тексте заменить все восклицательные знаки на точки.

  3. Определить среднюю длину слова в тексте. Слова разделены пробелом.

  1. COPY(St,Poz,N)

Выдает из St подстроку длиной N символов, начиная с позиции Poz. Если Poz>длины строки, то результат будет пробел. Если Poz>255, то выдается ошибка. Poz, N –целочисленные выражения.

Значение St

Выражение

Результат

строка

COPY(St,3,3)

COPY(St,3,8)

рок

рока

  1. Concat(St1,St2,…Stn)

Выполняет сцепление St1…Stn в том порядке, в котором они указаны в списке параметров.

Выражение

Результат

Concat(‘AA’,XX’,’BB’)

AAXXBB

  1. Pos(St1,St2)

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]