Поделиться через


Функция 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

Выполняется текстовое сравнение.

Исключения

Тип исключения

Номер ошибки

Условие

ArgumentException

9

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)

См. также

Ссылки

Сводка по работе со строками

Функция Replace (Visual Basic)

ArgumentException