Strings.InStr 方法  
定义
重要
一些信息与预发行产品相关,相应产品在发行之前可能会进行重大修改。 对于此处提供的信息,Microsoft 不作任何明示或暗示的担保。
返回一个整数,该整数指定一个字符串在另一个字符串中的第一个匹配项的起始位置。 如果找到了匹配项,则该整数是从 1 开始的索引。 如果未找到匹配项,则函数返回零。
重载
| InStr(Int32, String, String, CompareMethod) | 
						 返回一个整数,该整数指定一个字符串在另一个字符串中的第一个匹配项的起始位置。  | 
        	
| InStr(String, String, CompareMethod) | 
						 返回一个整数,该整数指定一个字符串在另一个字符串中的第一个匹配项的起始位置。  | 
        	
InStr(Int32, String, String, CompareMethod)
- Source:
 - Strings.vb
 
- Source:
 - Strings.vb
 
- Source:
 - 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
 
可选。 数值表达式,设置每个搜索的起始位置。 如果省略该参数,则从第一个字符位置开始搜索。 起始索引从一开始。
- String1
 - String
 
必需。 正在搜索的 String 表达式。
- String2
 - String
 
必需。 查找到的 String 表达式。
- Compare
 - CompareMethod
 
可选。 指定字符串比较的类型。 如果省略 Compare,则由 Option Compare 设置确定比较类型。
返回
| 如果 | InStr 返回 | 
|---|---|
              String1 的长度为零或 Nothing | 0 | 
              String2 的长度为零或 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 函数在分析字符串时使用。
注意
              InStrB以前版本的 Visual Basic 中的 函数返回字节数,而不是字符位置。 它主要用于转换双字节字符集 (DBCS) 应用程序中的字符串。 所有 Visual Basic 2005 字符串都在 Unicode 中, InStrB 不再受支持。
              Compare 参数的设置是:
| 返回的常量 | Value | 说明 | 
|---|---|---|
Binary | 
0 | 执行二进制比较 | 
Text | 
1 | 执行文本比较 | 
另请参阅
- InStrRev(String, String, Int32, CompareMethod)
 - StrComp(String, String, CompareMethod)
 - ArgumentException
 - 字符串 (Visual Basic)
 - 字符串介绍 (Visual Basic)
 - Option Compare 语句
 
适用于
InStr(String, String, CompareMethod)
- Source:
 - Strings.vb
 
- Source:
 - Strings.vb
 
- Source:
 - 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 设置确定比较类型。
返回
| 如果 | InStr 返回 | 
|---|---|
              String1 的长度为零或 Nothing | 0 | 
              String2 的长度为零或 Nothing | 搜索的开始位置,该位置默认为第一个字符位置。 | 
未找到 String2。 | 0 | 
在 String2 中找到 String1 | 匹配开始的位置。 | 
示例
本例使用 InStr 函数返回一个字符串在另一个字符串中的第一个匹配项的位置。 在第一个示例中,搜索从第四个字符开始,并返回下一个小写“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 函数在分析字符串时使用。
注意
              InStrB以前版本的 Visual Basic 中的 函数返回字节数,而不是字符位置。 它主要用于转换双字节字符集 (DBCS) 应用程序中的字符串。 所有 Visual Basic 2005 字符串都在 Unicode 中, InStrB 不再受支持。
              Compare 参数的设置是:
| 返回的常量 | Value | 说明 | 
|---|---|---|
Binary | 
0 | 执行二进制比较 | 
Text | 
1 | 执行文本比较 | 
另请参阅
- InStrRev(String, String, Int32, CompareMethod)
 - StrComp(String, String, CompareMethod)
 - ArgumentException
 - 字符串 (Visual Basic)
 - 字符串介绍 (Visual Basic)
 - Option Compare 语句