ВБА Лике Оператор

У ВБА можете упоредити два низа користећи Као оператор за проверу подударности низова. У овом водичу ћете научити како користити овај оператор са различитим обрасцима.

Ако желите да научите како да упоредите низове у ВБА, кликните овде: ВБА Упореди низове - СтрЦомп

Ако желите да научите како да користите операторе за поређење, кликните овде: ВБА оператори за поређење - није једнако & више

Употреба сличног оператора за поређење два низа

Помоћу оператора Лике можемо проверити да ли низ почиње одређеним текстом, укључује га итд. Подразумевано, Као оператор упоређује знакове помоћу бинарне методе. То значи да оператор разликује мала и велика слова. Ако желите да буде мала и велика слова, морате ставити Опција Упореди текст на врху вашег модула. Користећи ову методу, Као оператор сматра да су „С“ и „с“ исти знакови. У нашим примерима користићемо подразумевано поређење, које разликује мала и велика слова.

Ако постоји подударање, Као оператор враћа Труе као резултат, или Фалсе у супротном.

Прво ћемо погледати једноставан пример где желимо да проверимо почиње ли наша стринг променљива господин. Да бисте то урадили, морате ставити звездицу (*) на крај одговарајућег текста (Господин*). Ево кода:

1234567891011121314 Суб ЛикеДемо ()Дим стрНаме Ас СтрингДим блнРесулт Као БоолеанстрНаме = "Господин Мицхаел Јамес"Ако стрНаме Као "Мр*" ОндаблнРесулт = ТачноИначеблнРесулт = НетачноКрај АкоЕнд Суб

У овом примеру желимо да проверимо да ли стринг стрНаме почиње са господин и врати Труе или Фалсе у променљивој блнРесулт.

Прво смо поставили вредност стрНаме до Господин Мицхаел Јамес:

1 стрНаме = "Господин Мицхаел Јамес"

Затим користимо Као оператор у наредби Иф:

12345 Ако стрНаме Као "Мр*" ОндаблнРесулт = ТачноИначеблнРесулт = НетачноКрај Ако

Као што је стрНаме почиње са господин, блнРесулт враћа Труе:

Слика 1. Помоћу оператора Лике проверите да ли низ почиње одређеним знаковима

Коришћење сличног оператора са различитим обрасцима подударања

Оператор Лике може проверити подударање два низа на основу различитих образаца. Ево листе могућих одговарајућих образаца:

Код узорка

Врста подударања

*

Одговара 0 или више знакова

?

Одговара једном знаку

#

Одговара једној цифри

[знакови]

Подудара се са једним знаком са листе знакова

[А-З]

Подудара се са било којим великим словом из абецеде

[А-За-з]

Подудара се са било којим знаком из абецеде

[! знакови]

Подудара се са једним знаком искључујући листу знакова

Сада можемо видети како да користимо ове обрасце у коду. Ево примера за више образаца:

Подударање једног знака:

1234567 стрТект1 = "АБЦДЕ"Ако стрТект1 Као "АБ? ДЕ" ОндаблнРесулт1 = ТачноИначеблнРесулт1 = НетачноКрај Ако

Подударање једне цифре:

1234567 стрТект2 = "АБ7ДЕ"Ако стрТект2 Као "АБ#ДЕ" ТадаблнРесулт2 = ТачноИначеблнРесулт2 = НетачноКрај Ако

Подударање било ког великог слова из абецеде:

1234567 стрТект3 = "АБЦДЕ"Ако стрТект3 Као "АБ [А-З] ДЕ" ТадаблнРесулт3 = ТачноИначеблнРесулт3 = НетачноКрај Ако

Не подударају се ни са једним великим словом из абецеде:

1234567 стрТект4 = "АБ7ДЕ"Ако стрТект4 Као "АБ [! А-З] ДЕ" ОндаблнРесулт4 = ТачноИначеблнРесулт4 = НетачноКрај Ако

Подударање било ког знака из абецеде (велика или мала слова):

1234567 стрТект5 = "АБцДЕ"Ако стрТект5 Као "АБ [А-За-з] ДЕ" ЗатимблнРесулт5 = ТачноИначеблнРесулт5 = НетачноКрај Ако

Када извршите код, видећете да је Као оператор враћа Труе у блнРесулт променљиве за свако поређење:

Слика 2. Коришћење оператора Лике са различитим обрасцима подударања

wave wave wave wave wave