Функция Filter (Visual Basic)
Обновлен: Ноябрь 2007
Возвращает массив (с индексацией от нуля), который содержит подмножество массива типа String, выделяемое согласно указанным условиям фильтрации.
Function Filter(
ByVal Source() As { Object | String },
ByVal Match As String,
Optional ByVal Include As Boolean = True,
Optional ByVal Compare As CompareMethod = CompareMethod.Binary
) As String()
Параметры
Source
Обязательный. Одномерный массив строк, подлежащих просмотру.Match
Обязательный. Строка, которую требуется найти.Include
Необязательно. Значение типа Boolean, которое указывает, требуется ли возвращать подстроки, содержащие строку Match, или, наоборот, не содержащие ее. Если Include установлен в True, функция Filter возвращает подмножество строк массива, содержащего Match в виде подстроки. Если Include установлен в False, функция Filter возвращает подмножество строк массива, не содержащего Match в виде подстроки.Compare
Дополнительный. Числовое значение, указывающее вид выполняемого сравнения строк. См. "Параметры" для значений.
Параметры
Аргумент Compare может принимать следующие значения:
Константа |
Описание |
---|---|
CompareMethod.Binary |
Выполняется двоичное сравнение. |
CompareMethod.Text |
Выполняется текстовое сравнение. |
Исключения
Тип исключения |
Номер ошибки |
Условие |
---|---|---|
Source является Nothing или не является одномерным массивом. |
См. столбец "Номер ошибки", если выполняется обновление приложений Visual Basic 6.0, в которых используется неструктурированная обработка ошибок. (Можно сравнить номер ошибки с Свойство Number (объект Err).) Однако, по возможности, следует заменять такую обработку ошибок на Обзор структурной обработки исключений в Visual Basic.
Заметки
Если соответствия Match найдены в Source, функция Filter возвращает пустой массив. Ошибка возникает, если Source установлен в Nothing или не является одномерным массивом.
Массив, возвращаемый функцией Filter, содержит ровно столько элементов, сколько требуется для размещения отобранных строк.
Пример
В данном примере показано использование функции Filter.
Dim TestStrings(2) As String
TestStrings(0) = "This"
TestStrings(1) = "Is"
TestStrings(2) = "It"
Dim subStrings() As String
' Returns ["This", "Is"].
subStrings = Filter(TestStrings, "is", True, CompareMethod.Text)
' Returns ["This"].
subStrings = Filter(TestStrings, "is", True, CompareMethod.Binary)
' Returns ["Is", "It"].
subStrings = Filter(TestStrings, "is", False, CompareMethod.Binary)
Требования
Пространство имен:Microsoft.VisualBasic
**Модуль:**Strings
**Сборка:**Visual Basic (библиотека времени выполнения, в Microsoft.VisualBasic.dll)