Microsoft(R) Visual Basic(R) Scripting Edition InStr 函数 | 语言参考 起始页 | 版本 1

请参阅

##### 描述

> 返回某字符串在另一字符串中第一次出现的位置。

##### 语法

> InStr([start, ]string1, string2[, compare])

> InStr 函数的语法有以下参数：

> 参数 | 描述
> start | 可选。数值表达式，用于设置每次搜索的开始位置。如果省略，将从第一个字符的位置开始搜索。如果 start 包含 Null，则会出现错误。如果已指定 compare，则必须要有 start 参数。
> string1 | 必选。接受搜索的字符串表达式。
> string2 | 必选。要搜索的字符串表达式。
> compare | 可选。指示在计算子字符串时使用的比较类型的数值。有关数值，请参阅“设置”部分。如果省略，将执行二进制比较。

##### 设置

> compare 参数可以有以下值：

> 常数 | 值 | 描述
> vbBinaryCompare | 0 | 执行二进制比较。
> vbTextCompare | 1 | 执行文本比较。

##### 返回值

> InStr 函数返回以下值：

> 如果 | InStr 返回
> string1 为零长度 | 0
> string1 为 Null | Null
> string2 为零长度 | start
> string2 为 Null | Null
> string2 没有找到 | 0
> 在 string1 中找到 string2 | 找到匹配字符串的位置
> start > Len(string2) | 0

##### 说明

> 下面的示例利用 InStr 搜索字符串:

> >     Dim SearchString, SearchChar, MyPos
> >     SearchString ="XXpXXpXXPXXP"            ' 要在其中搜索的字符串。
> >     SearchChar = "P"                        ' 搜索 "P"。

> >     '文本比较从第四个字符开始返回 6。
> >     MyPos = Instr(4, SearchString, SearchChar, 1)

> >     '二进制比较从第1个字符开始返回 9。
> >     MyPos = Instr(1, SearchString, SearchChar, 0)

> >     ' 缺省为二进制比较(最后一个参数省略)。
> >     MyPos = Instr(SearchString, SearchChar)    ' 返回 9。

> >     ' 二进制比较从第1个字符开始返回 0 (没有找到 "W")。
> >     MyPos = Instr(1, SearchString, "W")

> 注意 InStrB 函数使用包含在字符串中的字节数据，所以 InStrB 返回的不是一个字符串在另一个字符串中第一次出现的字符位置，而是字节位置。

(C) 1998 Microsoft Corporation. All rights reserved. Terms of Use.