Методич_стат-исправлено. Методические указания по курсу Информатика
Скачать 2.11 Mb.
|
Инструменты обработки текстовых величинСуществует ряд функций и операторов, предназначенных для анализа и обработки строк. Принципы их действия, допустимые аргументы, практика использования очень похожи, поэтому рассмотрим большинство инструментов в одном параграфе, чтобы он стал справочной базой данной главы.
Функция LEN Функция предназначена для определения количества символов в текстовой переменной. LЕN (символьное_выражение) Символьное_выражение — выражение, результат которого представлен величиной текстового типа. Символьным выражением может быть отдельная текстовая переменная, текст в кавычках, сумма переменных, символьная функция с соответствующим аргументом и пр. Пример1. Определить количество знаков в текстовой переменной и в сумме текстовой переменной и строки текста в кавычках. A$ = “Информатика” X = LEN (A$): PRINT X PRINT LEN(A$ + “BASIC”) Результат пример 1: 11 16 Работа программы. Первая функция LEN вернула количество символов в переменной А$. Затем это значение было присвоено переменной X и выведено, на экран. Вторая функция LEN определила количество символов в сумме переменной А$ и строки текста в кавычках. Функция LEFT$ Выделенные символы можно присвоить другой переменной или использовать как часть общего выражения. Содержание исходной строки не изменяется. LЕFТ$ (символьное_выражение. N) Здесь символьное_выражение — текстовая переменная, символы в кавычках или выражение, результатом вычисления которых является строковое значение; N — количество левых знаков символьного выражения. N может быть числом, переменной или математическим выражением с целым положительным результатом. Пример 2. Примеры работы функции LEFT$. А$ = "Microsoft" В$ = LEFT$(A$. 5): PRINT B$ '1 PRINT LEFT$(A$, LEN(A$) - 4) '2 PRINT LEFT$("Computer". 4) + "IBM" '3 Результат: Micro Micro CompIBM Работа программы. Первая строка иллюстрирует простейший случай. Функция LEFT$ выделяет первые 5 символов текстовой переменной и присваивает их переменной В$. В строке '2 число выделяемых символов задано выражением с участием текстовой функции. Запись LEN(A$) - 4 дает возможность выделить все первые знаки переменной А$, кроме последних четырех. Строка '3 показывает, что выделенные знаки могут использоваться как часть общего выражения, в примере они участвуют в сумме. Функция RIGHT$ Функция аналогична функции LEFT$, только предназначена для выделения указанного количества правых (последних) символов переменной. RIGHT$ (сиивольное_выражение. N) Описание аргументов функции соответствует описанию аргументов функции LEFT$, приведенных выше. Функция MID$ Функция предназначена для выделения n символов из символьного выражения, начиная с k-го. МID$(символьное_выражение. k [ . n]) Здесь символьное_выражение — строка, из которой выделяется указанное число символов, k — номер символа, с которого начинается выделение. Если значение k больше, чем количество символов в анализируемом тексте, то МID$ возвращает строку нулевой длины (""). Если значение k равно нулю или отрицательно, то появляется сообщение Illegalfunctioncall (Неверный вызов функции). n — количество последовательных символов, которое нужно выделить. Если n не указано или n < k, то выделяются все символы, с k-го и до конца строки. При n = 0 функция возвращает, пустую строку. В качестве k и n можно ставить числа, переменные или расчетные выражения с числовым результатом. Дробные значения автоматически округляются до целых чисел по правилам математики. Пример 3. Примеры работы, функции МID$. А$ = "ИНФОРМАТИКА" M$ = MID$(A$, 3, 6) PRINT M$ PRINT MID$(A$, 3) Результат: ФОРМАТ ФОРМАТИКА Работа программы. Первая функция MID$ выделяет 6 последовательных знаков, начиная с третьего, из текстовой переменной А$ и присваивает их переменной М$. Вторая функция MID$ возвращает все символы А$, начиная с третьего, потому что не указано количество выделяемых знаков. Оператор MID$ Оператор MID$ предназначен для замены n символов текстовой переменной, начиная с k-го, на знаки другого символьного выражения. Оператор изменяет значение текстовой переменной. Согласно формату он замещает n знаков текстовой переменной, начиная с k-го, на первые n знаков текстового выражения, стоящего справа от знака равенства. Пример 4: А$ = "123456" МID$(А$, 3, 2) = "abc" PRINT A$ Результат: 12аb56 Два знака переменной А$, начиная с третьего, были замещены первыми двумя знаками выражения abc. Формат оператора: МID$(текст._перем. ., k[,n]) = символьное_выражение k — номер знака в текстовой_переменной, с которого начинается замещение. Если номер k больше длины текстовой переменной, равен нулю или имеет отрицательное значение, то выводится сообщение об ошибке Illegalfunctioncall (Неверный вызов функции), n — количество замещаемых символов. Если оно не указано или k + n больше длины текстовой переменной, то замещаются все символы переменной, начиная с k-го, но длина полученной строки не может превышать исходной длины текстовой_переиённой. символьное_выражение - строка, первые n символов которой внедряются в текстовую переменную. Если символов в выражении меньше n, то используется столько знаков, сколько есть. Пример 5. Примеры работы оператора MID$. A$ = "123456": MID$(A$, 1, 3) = "abc" '1 PRINT A$ A$ = "123456": MID$(A$, 5, 3) = "abc" '2 PRINT A$ A$ = "123456": MID$(A$, 2) = "abcdefghijk" '3 PRINT A$ A$ = "123456": MID$(A$, 4!, 2) = MID$("abc", 2, 1) '4 PRINT A$ Результат: abc456 1234ab 1abcde 123b56 Работа программы, В строке '1 три символа, начиная с первого, заменяются тремя символами выражения abc. В строке '2 размещена попытка заменить три символа, начиная с пятого, но в исходной переменной всего 6 знаков, поэтому замещены только пятый и шестой. В строке '3 не указан второй параметр оператора MIDS (количество замещаемых знаков). Программа заменяет все знаки от второго до конца строки. Итоговое значение содержит 6 символов, потому что именно столько знаков содержала переменная А$ в начале работы оператора. В строке '4 использованы оператор и функция MID$. Функция выделяет второй знак в abc, а оператор ставит его на место четвертого знака в переменной А$. Согласно аргументам оператора, замещаться должно два знака, но так как функция возвращает только один, то четвертый символ А$ замещен, а пятый остался без изменений. Функция INSTR Функция определяет, входит ли одна текстовая переменная в другую. Если результат положительный, то функция возвращает номер символа, с которого начинается вхождение. В противном случае функция возвращает нуль INSTR([k], текст_выраж_1. текст_выраж_2) Функция проверяет наличие текстового_выражения_2 в текстовом_выражении_1. Число k задает номер символа, с которого начинается поиск вхождения. Если число не указано, то поиск начинается с первого знака. Пример 6 . Пример использования функции INSTR А$ = "Кавказ" В$ ="а" PRINT INSTR(a$, b$) PRINT INSTR(3, a$, b$) Результат: 2 5 Работа программы. Первая функция INSTR начинает поиск вхождения, а в слово Кавказ с первого символа и возвращает номер первого вхождения (2). Вторая функция начинает поиск с третьей позиции и возвращает число 5. Функции LTRIM$ и RTRIM$ Эти функции используются для удаления первых (левых) и последних (правых) пробелов текстового выражения, если начальные или концевые пробелы есть. LTRIМ$(текстовое_выражение) RTRIМ$(текстовое_выражение) Функция ASC Функция возвращает код ASCII, соответствующий указанному знаку. АSС(символьное_выражение) В качестве символьного выражения можно использовать текст в кавычках, строковую переменную или выражение с текстовым результатом. Функция возвращает ASCII-код только первого знака строки. Пример 7. Пример использования функций ASC PRINT ASC("A"): PRINT ASC("AB") Результат: 65 65 Функция CHR$ Выводит на экран символ, соответствующий определенному номеру в таблице ASCII. CHR$(n) Здесь n — код из таблицы ASCII. Oн должен попасть в диапазон от 0 до 255, иначе будет выведено сообщение об ошибке Illegalfunctioncall (Неверный вызов функции). |