Студопедия

КАТЕГОРИИ:


Архитектура-(3434)Астрономия-(809)Биология-(7483)Биотехнологии-(1457)Военное дело-(14632)Высокие технологии-(1363)География-(913)Геология-(1438)Государство-(451)Демография-(1065)Дом-(47672)Журналистика и СМИ-(912)Изобретательство-(14524)Иностранные языки-(4268)Информатика-(17799)Искусство-(1338)История-(13644)Компьютеры-(11121)Косметика-(55)Кулинария-(373)Культура-(8427)Лингвистика-(374)Литература-(1642)Маркетинг-(23702)Математика-(16968)Машиностроение-(1700)Медицина-(12668)Менеджмент-(24684)Механика-(15423)Науковедение-(506)Образование-(11852)Охрана труда-(3308)Педагогика-(5571)Полиграфия-(1312)Политика-(7869)Право-(5454)Приборостроение-(1369)Программирование-(2801)Производство-(97182)Промышленность-(8706)Психология-(18388)Религия-(3217)Связь-(10668)Сельское хозяйство-(299)Социология-(6455)Спорт-(42831)Строительство-(4793)Торговля-(5050)Транспорт-(2929)Туризм-(1568)Физика-(3942)Философия-(17015)Финансы-(26596)Химия-(22929)Экология-(12095)Экономика-(9961)Электроника-(8441)Электротехника-(4623)Энергетика-(12629)Юриспруденция-(1492)Ядерная техника-(1748)

Шаг 89 - Оператор Like




Dim MyObject, YourObject, ThisObject, OtherObject, ThatObject, MyCheck

Шаг 88 - Оператор Is

Используется для сравнения двух переменных, содержащих ссылки на объекты.

результат = объект1 Is объект2

Параметры
результат: Обязательный; любая числовая переменная.
объект1: Обязательный; любое имя объекта.
объект2: Обязательный; любое имя объекта.

Замечания
Если переменные объект1 и объект2 содержат ссылки на один объект, результат имеет значение True; в противном случае результат имеет значение False. Ссылки на один объект в двух переменных задаются различными способами.
В следующей инструкции в переменной A задается ссылка на тот же объект, что и в переменной B:

Set A = B

Следующая инструкция задает в переменных A и B ссылку на тот же объект, что и в переменной C:

Set A = C

Set B = C

Пример
В данном примере демонстрируется использование оператора Is для сравнения ссылок на объекты. Имена объектных переменных являются произвольными и используются только для демонстрации.

Set YourObject = MyObject ' Определяет ссылки на объекты.

Set ThisObject = MyObject

Set ThatObject = OtherObject

MyCheck = YourObject Is ThisObject ' ВозвращаетTrue.

MyCheck = ThatObject Is ThisObject ' Возвращает False.

' Пусть MyObject <> OtherObject

MyCheck = MyObject Is ThatObject ' Возвращает False.

 


Используется для сравнения двух строковых выражений.

результат = строка Like образец

Параметры
результат: Обязательный; любая числовая переменная.
Строка: Обязательный; любое строковое выражение.
Образец: Обязательный; любое строковое выражение, удовлетворяющее описанным ниже соглашениям о сравнениях строк с образцом.

Замечания
Если значение переменной строка соответствует значению переменной образец, результат имеет значение True; при их несоответствии результат имеет значение False. Если любой из операндов, строка или образец, имеет значение Null, результат также имеет значение Null.
Характеристики оператора Like определяются настройкой, задаваемой в инструкции Option Compare. Если не указано другое, то стандартный способ сравнения строк в каждом модуле задается инструкцией Option Compare Binary.
Инструкция Option Compare Binary указывает способ сравнения строковых значений, основанный на порядке сортировки, который определяется внутренним двоичным представлением символов. В Microsoft Windows порядок сортировки определяется кодовой страницей. Ниже демонстрируется типичный пример упорядочивания символов:

A < B < E < Z < a < b < e < z < А < К < Ш < а < к < ш

Инструкция Option Compare Text указывает способ сравнения строковых значений, основанный на порядке сортировки по алфавиту без учета регистра, который определяется национальной настройкой системы. Приведенная выше последовательность символов при сортировке с настройкой Option Compare Text будет упорядочиваться следующим образом:

(A=a) < (B=b) < (E=e) < (Z=z) < (А=а) < (К=к) < (Ш=ш)

Существуют встроенные средства сравнения строковых значений, допускающие использование в образце подстановочных знаков, списков символов и диапазонов символов. В следующей таблице перечислены специальные символы, используемые в переменной образец, и соответствующие им символы в переменной строка:

Специальные символы Совпадающие символы

? Любой одиночный символ.

* Любое количество символов или отсутствие символа.

# Любая одиночная цифра (0–9).

[список] Любой одиночный символ, входящий в список.

[!список] Любой одиночный символ, не входящий в список.

Любой одиночный символ в переменной строка может быть сравнен с группой из одного или нескольких символов (список), заключенных в квадратные скобки ([ ]). Такая группа может содержать символы практически с любыми кодами, включая цифры.
Специальные символы левая квадратная скобка ([), вопросительный знак (?), символ (#) и звездочка (*) сравниваются как обычные символы, только если они заключены в квадратные скобки. Правая квадратная скобка (]) в группе всегда рассматривается как специальный символ, но может сравниваться как обычный символ вне группы.
В дополнение к простому списку символов в квадратных скобках, допускается указание в образце диапазона символов с помощью дефиса (–), отделяющего нижнюю и верхнюю границы диапазона. Например, [A-Z] указывает, что совпадающими будут считаться все символы верхнего регистра латинского алфавита, находящиеся в нужной позиции в переменной строка. Допускается указание внутри прямых скобок нескольких диапазонов без символов разделителей.
Конкретный вид указанного диапазона определяется действующим во время выполнения способом упорядочивания символов (который задается инструкцией Option Compare и национальной настройкой системы). Если использовать приведенный выше пример в режиме Option Compare Binary, то диапазону [A–E] соответствуют символы A, B и E. В режиме Option Compare Text, образцу [A–E] соответствуют символы A, a, А, а, B, b, E, e. Отметим, что в это диапазон не попадают символы К или к, поскольку все символы русского алфавита размещаются в порядке сортировки после стандартных символов латинского алфавита.
Существуют также следующие правила, действующие при сравнении с образцом:
Восклицательный знак (!) в начале перечня список указывает, что совпадающим с образцом считается любой символ в соответствующей позиции в операнде строка, за исключением входящих в список. Вне квадратных скобок восклицательный знак рассматривается как обычный символ.
Дефис (–) в начале списка или сразу после восклицательного знака, а также в конце списка рассматривается как обычный символ. В любой другой позиции внутри квадратных скобок он рассматривается как определение диапазона.
Определять диапазон необходимо в порядке возрастания. [A-Z] является допустимым определением диапазона, а [Z-A] недопустимым.
Пустая пара квадратных скобок [] игнорируется; она рассматривается как пустая строка ("").
В некоторых языках имеются специальные символы алфавита, представляющие пару букв. Например, символ "ж" представляет стоящие рядом буквы "a" и "e". Оператор Like распознает такой символ и соответствующую пару букв как эквивалентные.
Если в системных национальной настройке указан язык, в котором используются специальные символы, то включение такого символа и в переменную образец, и в переменную строка приводит к тому, что эквивалентная пара в букв в другом операнде рассматривается как совпадающая с этим символом. Аналогично, при включении специального символа в образец внутри квадратных скобок (одного символа или как часть определения списка или диапазона) он представляет эквивалентную пару букв в операнде строка.

Пример
В данном примере демонстрируется использование оператора Like для сравнения строкового значения с образцом.




Поделиться с друзьями:


Дата добавления: 2015-06-27; Просмотров: 305; Нарушение авторских прав?; Мы поможем в написании вашей работы!


Нам важно ваше мнение! Был ли полезен опубликованный материал? Да | Нет



studopedia.su - Студопедия (2013 - 2024) год. Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав! Последнее добавление




Генерация страницы за: 0.007 сек.