Filter 関数 (Visual Basic)

更新 : 2007 年 11 月

指定されたフィルタ条件に基づいた文字列 (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
    必ず指定します。検索先の 1 次元配列の文字列を指定します。

  • Match
    必ず指定します。検索する文字列を指定します。

  • Include
    省略可能です。Match を含む、または含まない部分文字列を返すかどうかを表すブール (Boolean) 値です。Include が True の場合、Filter 関数は、配列の各要素の文字列の中で、Match が含まれる配列のサブセットを返します。Include が False の場合、Filter 関数は、配列の各要素の文字列の中で、Match が含まれない配列のサブセットを返します。

  • Compare
    省略可能です。文字列式を評価するときに使用する文字列比較のモードを表す数値を指定します。値については、「設定」を参照してください。

設定

引数 Compare の設定値は次のとおりです。

定数

説明

CompareMethod.Binary

バイナリ モードで比較を行います。

CompareMethod.Text

テキスト モードで比較を行います。

例外

例外の種類

エラー番号

条件

ArgumentException

9

Source が Nothing であるか、1 次元の配列ではありません。

非構造化エラー処理を使用する Visual Basic 6.0 アプリケーションをアップグレードする場合は、「エラー番号」列を参照してください(エラー番号を Number プロパティ (Err オブジェクト) と照らし合わせます)。しかし、可能な限り、このエラー処理は Visual Basic の構造化例外処理の概要 で置き換えてください。

解説

Match に一致するものが Source にない場合、Filter 関数は空の配列を返します。Source が Nothing であるか、1 次元配列でない場合は、エラーになります。

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