次の方法で共有


方法 : 文字列の配列内で文字列を検索する (Visual Basic)

更新 : 2007 年 11 月

次の例は、文字列の配列内で各文字列をループ処理し、指定された部分文字列がどの文字列に含まれるかを調べます。部分文字列が見つかるたびに、文字列内の部分文字列のインデックスが表示されます。

使用例

次の例では、String オブジェクトの Contains メソッドと IndexOf メソッドが使用されています。

Contains メソッドは、指定された部分文字列が文字列に含まれるかどうかを示します。

IndexOf メソッドは、最初に見つかった部分文字列の 1 番目の文字の場所を報告します。インデックスはゼロベースです。つまり、文字列の最初の文字のインデックスは 0 になります。部分文字列が見つからなければ、IndexOf は -1 を返します。

Dim StrArray() As String = {"ABCDEFG", "HIJKLMNOP"}
Dim FindThisString As String = "JKL"
For Each Str As String In StrArray
    If Str.Contains(FindThisString) Then
        MsgBox("Found " & FindThisString & " at index " & _
          Str.IndexOf(FindThisString))
    End If
Next

このコードの例は、IntelliSense コード スニペットとしても利用できます。コード スニペット ピッカーでは、これは [データ型 - Visual Basic によって定義済み] にあります。詳細については、「方法 : コードにスニペットを挿入する (Visual Basic)」を参照してください。

コードのコンパイル方法

この例には、次の項目が必要です。

堅牢性の高いプログラム

IndexOf メソッドでは大文字と小文字が区別され、現在のカルチャが使用されます。

最適なエラー制御としては、文字列の検索を Try...Catch...Finally ステートメント (Visual Basic) 構造の Try ブロックで囲む方法があります。

参照

処理手順

方法 : 文字列内を検索する (Visual Basic)

参照

Try...Catch...Finally ステートメント (Visual Basic)

IndexOf

その他の技術情報

Visual Basic の文字列の概要