Функция Filter
Filter(SourceArray, Match[, Inclule, [Compare]])
Новая функция, которая появилась в версии Visual Basic 6.0
Функция Filter отбирает в выходной массив строки входного массива в соответствии с заданным образцом(либо только содержащие вхождения заданного образца, либо только не содержащие)
Возвращаемое значение
Функция возвращает нулевой строковый массив, содержащий строки, отобранные из входного массива в соответствии с заданным образцом
Параметры
- SourceArray
- Обязательный аргумент - одномерный массив строк, в котором производится поиск
- Match
- Обязательный аргумент, содержащий поисковую строку-образец для отбора(фильтрации)
- Include
- Необязательный аргумент, содержащий булево значение(Boolean) и указывающий, включают или не включают возвращаемые в качестве ответа строки поисковую строку-образец. Если значение Include равно True, значит возвращаемые подстроки содержат поисковую строку-образец; если False, то результат не содержит поисковую строку-образец
- Compare
- Необязательный аргумент - число, указывающее на используемый вид сравнения:
- vbUseCompareOption=-1
- Используются установки, задаваемые оператором Option Compare. Используется по умолчанию
- vbBinaryCompare=0
- Двоичное сравнение. Сравнение строк производится по внутренним кодам символов, определяемых кодовой страницей. Буквы разных регистров считаются разными
- vbTextCompare=1
- Текстовое сравнение. Сравнение строк без учета регистра на основе системной национальной настройки
- vbDatabaseCompare=2
- Сравнение на основе установок, принятых в обрабатываемой базе данных. Применяется в MS Access
Пример
Sub FilterTest()
Dim ArrX
ArrX = Array("Лето", "Осень", "Зима", "Весна")
MsgBox Join(Filter(ArrX, "а"), "-") ' Выводит все слова, где есть маленькая буква "а"
MsgBox Join(Filter(ArrX, "А"), "-") ' Выводит все слова, где есть заглавная буква "а"
MsgBox Join(Filter(ArrX, "А", True, vbTextCompare), "-") ' Выводит все слова, где есть любая буква "а"
MsgBox Join(Filter(ArrX, "А", False, vbTextCompare), "-") ' Выводит все слова, где отсутствует любая буква "а"
End Sub
Категория
Функции обработки строк |