Strings.InStr メソッド

定義

ある文字列の中から指定した文字列を検索し、最初に見つかった文字列の開始位置を示す整数型の値を返します。 一致するものが見つかった場合は、整数は、1 から始まるインデックスです。 一致するものが見つからない場合は、関数は 0 を返します。

オーバーロード

InStr(Int32, String, String, CompareMethod)

ある文字列の中から指定した文字列を検索し、最初に見つかった文字列の開始位置を示す整数型の値を返します。

InStr(String, String, CompareMethod)

ある文字列の中から指定した文字列を検索し、最初に見つかった文字列の開始位置を示す整数型の値を返します。

InStr(Int32, String, String, CompareMethod)

ソース:
Strings.vb
ソース:
Strings.vb
ソース:
Strings.vb

ある文字列の中から指定した文字列を検索し、最初に見つかった文字列の開始位置を示す整数型の値を返します。

public static int InStr (int StartPos, string? String1, string? String2, Microsoft.VisualBasic.CompareMethod Compare = Microsoft.VisualBasic.CompareMethod.Binary);
public static int InStr (int Start, string? String1, string? String2, Microsoft.VisualBasic.CompareMethod Compare = Microsoft.VisualBasic.CompareMethod.Binary);
public static int InStr (int StartPos, string String1, string String2, Microsoft.VisualBasic.CompareMethod Compare = Microsoft.VisualBasic.CompareMethod.Binary);
public static int InStr (int Start, string String1, string String2, Microsoft.VisualBasic.CompareMethod Compare = Microsoft.VisualBasic.CompareMethod.Binary);
static member InStr : int * string * string * Microsoft.VisualBasic.CompareMethod -> int
static member InStr : int * string * string * Microsoft.VisualBasic.CompareMethod -> int
Public Function InStr (StartPos As Integer, String1 As String, String2 As String, Optional Compare As CompareMethod = Microsoft.VisualBasic.CompareMethod.Binary) As Integer
Public Function InStr (Start As Integer, String1 As String, String2 As String, Optional Compare As CompareMethod = Microsoft.VisualBasic.CompareMethod.Binary) As Integer

パラメーター

StartStartPos
Int32

省略可能。 各検索の開始位置を設定する数式。 省略した場合、検索は最初の文字位置から開始されます。 開始インデックスは 1 から始まっています。

String1
String

必須です。 検索対象の String 型の式。

String2
String

必須です。 検索対象の String 型の式。

Compare
CompareMethod

省略可能。 文字列比較の種類を指定します。 Compare が省略されている場合、Option Compare 設定により比較の種類を決定します。

戻り値

IfInStr の戻り値
String1 の長さが 0、または Nothing0
String2 の長さが 0、または Nothing start
String2 が見つかりません。0
String2 が内部にある String1 一致する文字列の開始位置
Start>String1 の長さ0

例外

Start< 1.

InStr 関数を使って、ある文字列の中から指定された文字列を検索し、最初に見つかった文字位置を返す例を次に示します。

' String to search in.
Dim searchString As String = "XXpXXpXXPXXP"
' Search for "P".
Dim searchChar As String = "P"

Dim testPos As Integer
' A textual comparison starting at position 4. Returns 6.
testPos = InStr(4, searchString, searchChar, CompareMethod.Text)

' A binary comparison starting at position 1. Returns 9.
testPos = InStr(1, SearchString, SearchChar, CompareMethod.Binary)

' If Option Compare is not set, or set to Binary, return 9.
' If Option Compare is set to Text, returns 3.
testPos = InStr(searchString, searchChar)

' Returns 0.
testPos = InStr(1, searchString, "W")

注釈

通常、 InStr 関数は文字列を解析するときに使用されます。

注意

以前のバージョンの Visual Basic の 関数は InStrB 、文字位置ではなくバイト数を返します。 それは主に、2 バイト文字セット (DBCS) アプリケーションで文字列を変換するために使用します。 すべての Visual Basic 2005 文字列は Unicode に含まれており InStrB 、サポートされなくなりました。

Compare 引数の設定は以下の通りです。

定数 説明
Binary 0 バイナリ比較を実行します
Text 1 テキスト比較を実行します

こちらもご覧ください

適用対象

InStr(String, String, CompareMethod)

ソース:
Strings.vb
ソース:
Strings.vb
ソース:
Strings.vb

ある文字列の中から指定した文字列を検索し、最初に見つかった文字列の開始位置を示す整数型の値を返します。

public static int InStr (string? String1, string? String2, Microsoft.VisualBasic.CompareMethod Compare = Microsoft.VisualBasic.CompareMethod.Binary);
public static int InStr (string String1, string String2, Microsoft.VisualBasic.CompareMethod Compare = Microsoft.VisualBasic.CompareMethod.Binary);
static member InStr : string * string * Microsoft.VisualBasic.CompareMethod -> int
Public Function InStr (String1 As String, String2 As String, Optional Compare As CompareMethod = Microsoft.VisualBasic.CompareMethod.Binary) As Integer

パラメーター

String1
String

必須です。 検索対象の String 型の式。

String2
String

必須です。 検索対象の String 型の式。

Compare
CompareMethod

省略可能。 文字列比較の種類を指定します。 Compare が省略されている場合、Option Compare 設定により比較の種類を決定します。

戻り値

IfInStr の戻り値
String1 の長さが 0、または Nothing0
String2 の長さが 0、または Nothing既定では最初の文字の位置となる、検索の開始位置です。
String2 が見つかりません。0
String2 が内部にある String1一致する文字列の開始位置。

InStr 関数を使って、ある文字列の中から指定された文字列を検索し、最初に見つかった文字位置を返す例を次に示します。 最初の例では、検索は 4 番目の文字から始まり、次の小文字の "p" を返します。これは CompareMethod 、 であるため、大文字と小文字は Text 区別されません。 位置は、開始位置に関係なく、常に文字列の先頭に対して相対的です。

' String to search in.
Dim searchString As String = "XXpXXpXXPXXP"
' Search for "P".
Dim searchChar As String = "P"

Dim testPos As Integer
' A textual comparison starting at position 4. Returns 6.
testPos = InStr(4, searchString, searchChar, CompareMethod.Text)

' A binary comparison starting at position 1. Returns 9.
testPos = InStr(1, SearchString, SearchChar, CompareMethod.Binary)

' If Option Compare is not set, or set to Binary, return 9.
' If Option Compare is set to Text, returns 3.
testPos = InStr(searchString, searchChar)

' Returns 0.
testPos = InStr(1, searchString, "W")

注釈

通常、 InStr 関数は文字列を解析するときに使用されます。

注意

以前のバージョンの Visual Basic の 関数は InStrB 、文字位置ではなくバイト数を返します。 それは主に、2 バイト文字セット (DBCS) アプリケーションで文字列を変換するために使用します。 すべての Visual Basic 2005 文字列は Unicode に含まれており InStrB 、サポートされなくなりました。

Compare 引数の設定は以下の通りです。

定数 説明
Binary 0 バイナリ比較を実行します
Text 1 テキスト比較を実行します

こちらもご覧ください

適用対象