InStr 函数

重要:  本文是由机器翻译的,请参阅免责声明。请在 此处 中查找本文的英文版本以便参考。

返回一个 Variant (Long) 值,指定一个字符串在另一个字符串中首次出现的位置。

查看一些示例

语法

InStr ([开始, ] string1,string2 [、 比较] )

InStr函数语法具有以下参数︰

参数

描述

开始

可选。设置为每个搜索的起始位置的数值表达式。如果省略,则搜索开头的第一个字符的位置。如果启动包含 Null,则会出现错误。如果指定了比较启动参数是必需的。

string1

必填。要搜索的字符串表达式。

string2

必填。搜索的字符串表达式。

比较

可选。指定字符串比较的类型。如果比较为 Null,则会出现错误。如果省略了比较,则选项比较设置用于确定的比较的类型。指定有效的 LCID (区域设置 Id) 比较中使用特定区域设置的规则。

提示: 在 Access 2010 中,表达式生成器具有 IntelliSense,以便您可以查看您的表达式需要哪些参数。

设置

比较参数设置为︰

常数

说明

vbUseCompareOption

-1

使用执行比较比较选项语句的设置。

vbBinaryCompare

0

执行二进制比较。

vbTextCompare

1

执行文本比较。

vbDatabaseCompare

2

Microsoft Office Access 2007仅。执行比较根据数据库中的信息。


返回值

如果

InStr 返回

string1 长度为零

0

string1 为 Null

Null

string2 长度为零

入门

string2 为 Null

Null

找不到 string2

0

string2 找到 string1 内

找到匹配项的位置

开始 > string2

0


注解

InStrB函数用于字节包含字符串中的数据。不会返回一个字符串在另一个字符串的第一个匹配项的字符位置, InStrB返回字节位置。

示例

使用 InStr 函数在表达式中   您可以使用表达式的任意位置,您可以使用InStr 。例如,如果您想要查找字段包含 IP 地址 (命名 ip 地址) 中的第一期 (.) 的位置,您可以使用InStr找到它,如下所示︰

InStr(1,[IPAddress],".")

InStr函数检查 ip 地址字段中的每个值,并且返回第一个期间的位置。因此,如果 IP 地址的第一部分是10。,该函数返回 3 的值。

您可以使用InStr函数的输出操作其他函数提取前面第一个时间段,类似这样的 IP 地址的部分︰

Left([IPAddress],(InStr(1,[IPAddress],".")-1))

在此示例中, InStr(1,[IPAddress],".")返回第一个期间的位置。减去 1 确定多少个字符的前面的第一个期间,这种情况下,2。Left函数然后从左侧的 ip 地址字段,返回值 10 部分提取该数目的字符。

在 VBA 代码中使用InStr   

注意: 下面的示例说明使用此函数在 Visual Basic for Applications (VBA) 模块。有关处理 VBA 的详细信息,搜索旁边的下拉列表中选择开发人员参考,然后在搜索框中输入一个或多个条款。

此示例使用InStr函数返回一个字符串在另一个字符串的第一个匹配项的位置。

Dim SearchString, SearchChar, MyPos
SearchString ="XXpXXpXXPXXP" ' String to search in.
SearchChar = "P" ' Search for "P".
' A textual comparison starting at position 4. Returns 6.
MyPos = Instr(4, SearchString, SearchChar, 1)
' A binary comparison starting at position 1. Returns 9.
MyPos = Instr(1, SearchString, SearchChar, 0)
' Comparison is binary by default
' (last argument is omitted).
MyPos = Instr(SearchString, SearchChar) ' Returns 9.
MyPos = Instr(1, SearchString, "W") ' Returns 0.

注意: 机器翻译免责声明:本文是由无人工介入的计算机系统翻译的。Microsoft 提供机器翻译是为了帮助非英语国家/地区用户方便阅读有关 Microsoft 产品、服务和技术的内容。由于机器翻译的原因,本文可能包含词汇、语法或文法方面的错误。

扩展你的技能
了解培训
抢先获得新功能
加入 Office 预览体验计划

此信息是否有帮助?

谢谢您的反馈!

谢谢你的反馈! 可能需要转接到 Office 支持专员。

×