Access 2002

Две строки


Она позволяет задать две строки и константу, указывающую, как их сравнивать: vbUseCompareOption (использовать текущую установку Option Compare), vbBinaryCompare (осуществлять сравнение с учетом регистра), vbTextCompare (сравнивать без учета регистра) или vbDatabaseCompare (использовать режим сравнения, заданный для базы данных). Функция StrComp возвращает 0, если строки равны, -1, если первая строка меньше второй, и +1, если первая строка больше второй. Для сравнения двух строк без учета регистра можно написать одну из двух строк кода:

Тесты показывают, что короткие строки быстрее обрабатываются функцией StrComp, однако при существенном увеличении их длины становится практически все равно, каким образом их сравнивать. Ну, а поскольку вам по большей части предстоит сравнивать короткие строки, мы рекомендуем пользоваться функцией StrComp. (Просмотрите также полные тестовые процедуры Test8a и Test8b в модуле класса OptimizingTests.)

Используйте оператор Like, а не сравнивайте символы по отдельности

Представьте себе такую ситуацию: значение некоторой переменной в вашей программе должно состоять из пяти символов — четырех букв и одной цифры, стоящей во второй позиции. В частности, оно может быть таким: "W5TGQ". Значения переменной вводятся пользователем, и вы должны проверять их на соответствие этому формату. Сделать это можно так: перебрать в цикле все символы строки и проверить каждый на соответствие определенным условиям. Если условия для очередного символа не выполнены, цикл прекращается. Вот пример кода, в котором используется функция Windows API IsCharAlpha, возвращающая 1, если переданное ей значение является кодом буквы, и 0 — в противном случае:

Конечно, код может быть и несколько иным, но суть останется той же.

Комментарии закрыты