Оператор Like используется для сравнения строк с шаблонами. Шаблон - это особым образом записанная последовательность символов. При построении шаблонов используются специальные символы, приведенные в таблице.
Таблица Символы для построения шаблонов | |
Символы | Описание |
? | Любой одиночный символ |
* | Любое количество любых символов |
# | Любая одиночная цифра |
[список символов] | Любой одиночный символ, входящий в список символов |
[!список символов] | Любой одиночный символ, не входящий в список |
После построения шаблона его заключают в кавычки.
Давайте рассмотрим пример, реализующий следующие проверки.
- Узнать, есть ли в строке прописные и заглавные буквы латинского алфавита.
- Проверить, состоит ли введенное слово из четырех символов (цифр или букв)
- Проверить, состоит ли введенная последовательность из двух любых символов (цифр или букв) и двух цифр
- Проверить, нет ли во введенной строке русских букв "а" и "о"
- Если введенная строка начинается двумя буквами "d" и заканчивается тремя буквами "f", сообщить об этом
Далее вы можете найти решение этой задачи
|
|
Dim str_Inp As String
str_Inp = InputBox("Введите строку")
'Есть ли латинские буквы в строке
If str_Inp Like "[a-z]" Or _
str_Inp Like "[A-Z]" _
Then MsgBox ("В строке есть латинские буквы")
'Состоит ли введенное слово из 4-х символов
If str_Inp Like "????" Then _
MsgBox ("Введенное слово состоит из 4-х символов")
'Состоит ли введенная последовательность
'из 2-х любых символов и 2-х цифр
If str_Inp Like "??##" Then _
MsgBox ("Введены два любых символа и две цифры")
'Проверка на отсутствие букв
'"а", "о"
If str_Inp Like "[!а]" And _
str_Inp Like "[!о]" Then
MsgBox ("В строке нет букв " + Chr(34) + _
"а" + Chr(34) + " и " + Chr(34) + "о" + Chr(34))
End If
'Проверка на наличие в начале
'введенной строки двух букв "d", а в конце
'трех "f"
If str_Inp Like "dd*fff" _
Then MsgBox ("Строка имеет вид: dd*fff")
Как вы можете видеть, шаблон для сравнении с текстом всегда заключается в двойные кавычки. На основе информации об использовании шаблонных символов вы можете самостоятельно построить выражения для проверки различных последовательностей.
Оператор Is используется для работы с объектными переменными. Мы будем подробно рассматривать их в начале следующей главы. Оператор Is проверяет, ссылаются ли две объектные переменные на один и тот же объект. Если это так - он возвращает True, если нет - то False.