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 |
テキスト モードで比較を行います。 |
例外
例外の種類 |
エラー番号 |
条件 |
---|---|---|
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)