VB.NET先頭からいくつかの文字を検索する

スポンサーリンク

System.String クラスの IndexOf メソッドを使用すると、先頭から文字を検索することができます。これとは別で IndexOfAny メソッドというメソッドがあります。

IndexOfAny メソッドは Char 型の配列を指定し、その配列内に存在する文字のいずれかがヒットした最初のインデックス値を返します。

末尾からいくつかの文字を検索する場合は、末尾からいくつかの文字を検索する をご覧ください。

サンプルコード

以下にサンプルコードを示します。

VB.NET 全般
    ' 必要な変数を宣言する
    Dim stTarget As String = "EDCBABCDE"
    Dim chFinds  As Char() = {"B"c, "C"c, "D"c}

    ' 先頭から 'B', 'C', 'D' のいずれかを検索し、見つかった位置を取得する
    Dim iFind1 As Integer = stTarget.IndexOfAny(chFinds)

    ' 3 文字目の後から 'B', 'C', 'D' のいずれかを検索し、見つかった位置を取得する
    Dim iFind2 As Integer = stTarget.IndexOfAny(chFinds, 3)

    ' 4 文字目の後から 2 文字まで 'B', 'C', 'D' のいずれかを検索し、見つかった位置を取得する
    Dim iFind3 As Integer = stTarget.IndexOfAny(chFinds, 4, 2)

    ' すべての結果を表示する
    MessageBox.Show( _
        "iFind1 = " & iFind1.ToString() & System.Environment.NewLine & _
        "iFind2 = " & iFind2.ToString() & System.Environment.NewLine & _
        "iFind3 = " & iFind3.ToString() _
    )

関連するリファレンス

準備中です。

スポンサーリンク