Strings.InStr 方法

定义

返回一个整数,该整数指定一个字符串在另一个字符串中的第一个匹配项的起始位置。 如果找到了匹配项,则该整数是从 1 开始的索引。 如果未找到匹配项,则函数返回零。

重载

InStr(Int32, String, String, CompareMethod)

返回一个整数,该整数指定一个字符串在另一个字符串中的第一个匹配项的起始位置。

InStr(String, String, CompareMethod)

返回一个整数,该整数指定一个字符串在另一个字符串中的第一个匹配项的起始位置。

InStr(Int32, String, String, CompareMethod)

返回一个整数,该整数指定一个字符串在另一个字符串中的第一个匹配项的起始位置。

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

可选。 数值表达式,设置每个搜索的起始位置。 如果省略该参数,则从第一个字符位置开始搜索。 起始索引从一开始。

String1
String

必需。 正在搜索的 String 表达式。

String2
String

必需。 查找到的 String 表达式。

Compare
CompareMethod

可选。 指定字符串比较的类型。 如果省略 Compare,则由 Option Compare 设置确定比较类型。

返回

如果InStr 返回
String1 的长度为零或 Nothing0
String2 的长度为零或 Nothing start
未找到 String20
String2 中找到 String1 匹配开始的位置
Start 长度大于 String10

例外

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 函数在分析字符串时使用。

注意

InStrB以前版本的 Visual Basic 中的 函数返回字节数,而不是字符位置。 它主要用于转换双字节字符集 (DBCS) 应用程序中的字符串。 所有 Visual Basic 2005 字符串都在 Unicode 中, InStrB 不再受支持。

Compare 参数的设置是:

返回的常量 “值” 说明
Binary 0 执行二进制比较
Text 1 执行文本比较

另请参阅

适用于

InStr(String, String, CompareMethod)

返回一个整数,该整数指定一个字符串在另一个字符串中的第一个匹配项的起始位置。

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 设置确定比较类型。

返回

如果InStr 返回
String1 的长度为零或 Nothing0
String2 的长度为零或 Nothing搜索的开始位置,该位置默认为第一个字符位置。
未找到 String20
String2 中找到 String1匹配开始的位置。

示例

本例使用 InStr 函数返回一个字符串在另一个字符串中的第一个匹配项的位置。 在第一个示例中,搜索从第四个字符开始,并返回下一个小写“p”,因为 CompareMethodText ,因此不区分大小写。 无论起始位置如何,该位置始终相对于字符串的开头。

' 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 函数在分析字符串时使用。

注意

InStrB以前版本的 Visual Basic 中的 函数返回字节数,而不是字符位置。 它主要用于转换双字节字符集 (DBCS) 应用程序中的字符串。 所有 Visual Basic 2005 字符串都在 Unicode 中, InStrB 不再受支持。

Compare 参数的设置是:

返回的常量 “值” 说明
Binary 0 执行二进制比较
Text 1 执行文本比较

另请参阅

适用于