Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
МУ Информатика ЛР.doc
Скачиваний:
12
Добавлен:
27.08.2019
Размер:
3.47 Mб
Скачать

Функции для работы со строками . Сравнение строковых выражений

Для сравнения строковых выражений используются следующие функции:

1) Option Compare{Binary | Text | Database}, где

Binary – сравнение идёт побайтно;

Text – сравнение идёт по расположению этих слов в словаре;

Database – работает только с Microsoft Access.

Операция сравнения не зависит от регистра символов.

2) StrComp (string1, string2 [,compare]), где

string1 – строка, которая сравнивается;

string2 – строка, которая сравнивается;

compare – способ сравнения (по умолчанию 0 – Binary, 1 – Text)

Если string1=string2, то функция возвращает 0; если string1<string2, то возвращает 1; если string1>string2, то возвращает -1.

Удаление пробелов

При работе со строками используется три функции удаления пробелов. Описание и назначение этих функций представлено в таблице 1.

Таблица 1

Описание и назначение функций удаления пробелов

Функция

Назначение

Тип аргумента

Тип результата

LTrim(N)

Удаляет все пробелы в начале строки (слева – left)

String

String

RTrim(N)

Удаляет все пробелы в конце строки (справа – right)

String

String

Trim(N)

Удаляет все пробелы в начале и в конце строки

String

String

Пример 2:

Sub Строки2()

Dim A As String

Dim B As String

A=" Строковая переменная "

В=LTrim(A) 'Результат: "Строковая переменная "

B=RTrim(A) 'Результат: " Строковая переменная"

B=Trim(A) 'Результат: "Строковая переменная"

End Sub

Преобразование числа в строку

Для преобразования числового значения в строковое используется функция Str(Value), где

Value – аргумент функции числового типа.

Результат будет иметь тип String.

Например:

Если переменная n=1000, то в результате S=Str(n) получим S="1000".

Преобразование строки в число

Для преобразования строки в число используется функция Val(St), где

St – аргумент функции строкового типа.

Результат будет иметь числовой тип.

Если функция Val не может сделать преобразование, то она возвращает ноль.

Пример 3:

Sub Строки3()

Dim A As String

Dim B As Currency

A="45.77"

B=Val(A) 'Результат: В=45.77

A=Str(B) 'Результат: А="45.77"

B=Val("4.7=X") 'Результат: В=4.7

B=Val("Х=4.7") 'Результат: В=0

End Sub

Возвращение строки, состоящей из пробелов.

Для возвращения в программу строки, состоящей из пробелов, используется функция Space(N), где

N – аргумент функции типа Byte, обозначающий количество пробелов, из которых будет состоять строка.

Пример 4:

Sub Строки4()

Dim A As String

Dim B As Currency

Dim C As String

A="X="

B=45.77

C=A & Str(B) 'Результат: С="Х=45.77"

B=Val("45.77=X") 'Результат: В=45.77

B=Val(C) 'Результат: В=0

C="Строковая" & Space(3) & "переменная"

'Результат: С="Строковая переменная"

End Sub

Замена подстроки

Для замены какой-либо части строки или определённых символов используется функция Replace.

Её синтаксис: Replace(expression, find, replace [,start [,count [,compare]]]), где:

expression – исходная строка;

find – какую подстроку заменить;

replace – на какую подстроку заменит;

start – позиция начала поиска (по умолчанию равна 1);

count – количество проводимых замен (по умолчанию

равно 1);

compare – способ сравнения (по умолчанию Binary(0) – сравнение идёт побайтно; Text(1) – сравнение идёт по расположению строк в словаре).

Пример 5:

Sub строки5()

Dim A As String

Dim B As String

A="Павел Иванов"

B=Replace(A, "Иванов", "Гусев") 'Результат: В="Павел Гусев

End Sub

Преобразование букв строки в заглавные или строчные

Для преобразования строки или строковой переменной таким образом, чтобы все буквы стали заглавными (то есть буквами верхнего регистра – upper case) или строчными (то есть буквами нижнего регистра – lower case) используются функции UCase(S) и LCase(S) соответственно.

Описание и назначение этих функций приведено в таблице 2.

Таблица 2

Описание и назначение функций UCase и LCase

Функция

Назначение

Тип аргумента

Тип результата

UCase(S)

Преобразует все буквы строки в заглавные

String

String

LCase(S)

Преобразует все буквы строки в строчные

String

String

Пример 6:

Sub Строки6()

Dim A As String

Dim B As String

A="Павел Иванов"

В=UCase(A) 'Результат: "ПАВЕЛ ИВАНОВ"

B=LCase(A) 'Результат: "павел иванов"

End Sub