Оператор Option Compare
Объявляет метод сравнения по умолчанию для использования при сравнении строковых данных.
Option Compare { Binary | Text }
Части
Термин |
Определение |
Binary |
Необязательно. Сравнения строк основываются на порядке сортировки, производном от внутренних двоичных представлений символов. Такой тип сравнения наиболее часто применяется, если строки могут содержать символы, которые не следует интерпретировать как текст. В этом случае сравнение по алфавитной эквивалентности будет неверным (например, поскольку не будет учитываться регистр). |
Text |
Необязательно. Результаты сравнения строк на основе сортировки текста без учета регистра определяются языком вашей системы. Такой тип сравнения полезен, если строки содержат только текстовые символы, и нужно сравнить их с учетом алфавитной эквивалентности, то есть без учета регистра и с учетом схожих букв. Например, можно считать A и a равными, а Ä и ä должны быть до B и b. |
Заметки
Если используется оператор Option Compare, он должен быть указан в файле до всех прочих операторов.
Оператор Option Compare указывает метод сравнения строк (Binary или Text). Метод сравнения текста по умолчанию — Binary.
Сравнение Binary сравнивает числовое значение Юникода каждого символа в каждой строке. Сравнение Text сравнивает каждый символ Юникода на основе его лексического значения в текущем языке.
В Microsoft Windows порядок сортировки определяется кодовой страницей. Для получения дополнительной информации см. Кодовые страницы.
В следующем примере символы кодовой страницы ANSI 1252 сортируются с помощью оператора Option Compare Binary, создающего двоичный порядок сортировки.
A < B < E < Z < a < b < e < z < À < Ê < Ø < à < ê < ø
Когда эти же символы этой же кодовой страницы сортируются с помощью Option Compare Text, получается следующий порядок сортировки текста.
(A=a) < (À = à) < (B=b) < (E=e) < (Ê = ê) < (Z=z) < (Ø = ø)
Если оператор Option Compare отсутствует
Если исходный код не содержит оператор Option Compare, то используется параметр Option Compare в Страница "Компиляция" в конструкторе проектов (Visual Basic). Если используется компилятор командной строки, используется параметр компилятора /optioncompare.
Примечание
Отображаемые на компьютере имена или расположения некоторых элементов пользовательского интерфейса Visual Studio могут отличаться от указанных в следующих инструкциях. Это зависит от имеющегося выпуска Visual Studio и используемых параметров. Дополнительные сведения см. в разделе Настройка параметров разработки в Visual Studio.
Чтобы включить Option Compare в среде разработки
Выберите проект в обозревателе решений. В меню Проект выберите пункт Свойства. Для получения дополнительной информации см. Introduction to the Project Designer.
Откройте вкладку Компиляция.
Задайте значение в поле Option Compare.
При создании нового проекта значение параметра Option Compare на вкладке Компиляция задается в соответствии со значением параметра Option Compare в диалоговом окне Настройки. Чтобы изменить этот параметр, в меню Сервис выберите Настройки. В диалоговом окне Настройки разверните Проекты и решения, затем щелкните Параметры Visual Basic по умолчанию. Начальный параметр по умолчанию в окне Параметры Visual Basic по умолчанию имеет значение Двоичный.
Чтобы включить Option Compare в командной строке
- Включите параметр компилятора /optioncompare в команду vbc.
Пример
В следующем примере оператор Option Compare используется, чтобы задать двоичное сравнение в качестве метода сравнения строк по умолчанию. Чтобы использовать этот код, раскомментируйте оператор Option Compare Binary и поместите его в начало файла исходного кода.
' Option Compare Binary
Console.WriteLine("A" < "a")
' Output: True
В следующем примере оператор Option Compare используется, чтобы задать сортировку текста без учета регистра в качестве метода сравнения строк по умолчанию. Чтобы использовать этот код, раскомментируйте оператор Option Compare Text и поместите его в начало файла исходного кода.
' Option Compare Text
Console.WriteLine("A" = "a")
' Output: True
См. также
Ссылки
Операторы сравнения (Visual Basic)
Строковые функции (Visual Basic)
Оператор Option Explicit (Visual Basic)