InstrRev 函数

返回一个字符串在另一个字符串中的出现位置(从字符串末尾开始检查)。

语法

InStrRev(string1, string2[, start[, compare]])

参数:

  • string1必需。正在搜索的字符串表达式。
  • string2必需。要搜索的字符串表达式。
  • Start可选。用于设置每次搜索的起始位置的数字表达式。如果省略,则使用 -1,这意味着搜索从最后一个字符位置开始。如果 start 包含 Null,则会出现错误。
  • Compare可选。指示对子字符串进行求值时要使用的比较类型的数值。如果省略,将执行二进制比较。有关值,请参阅“设置”部分。
  • 设置:compare 参数可以具有以下值:

    表 11-17 比较常量和说明

    常量 说明
    vbBinaryCompare 0 执行二进制比较
    vbTextCompare 1 执行文本比较

返回值

InStrRev 函数返回以下值:

表 11-18 InstrRev 函数返回值

如果 InStrRev 返回
string1 为零长度 0
string2 为零长度 起始位置
未找到 string2 0
在 string1 中找到了 string2 找到匹配项的位置。
start > Len(string2) 0

注释

以下示例使用 InStrRev 函数搜索字符串:

示例 1

Dim SearchString, SearchChar, MyPos
SearchString ="abcdABCD"   ' String to search in.
SearchChar = "a"   ' Search for "a"
MyPos = InstrRev(SearchString, SearchChar)  ' Default Comparison is binary and starting at the last position (Third and Fourth argument is omitted)
'Output: 1

示例 2

Dim SearchString, SearchChar, MyPos
SearchString ="XXpXXpXXPXXP"   ' String to search in.
SearchChar = "P"   ' Search for "P".
MyPos = InstrRev(SearchString, SearchChar, 8)   ' Comparison is binary by default (last argument is omitted). 
'Output: 0

示例 3

Dim SearchString, SearchChar, MyPos
SearchString ="XXpXXpXXPXXP"   ' String to search in.
SearchChar = "P"   ' Search for "P".
MyPos = InstrRev(SearchString, SearchChar, 10, 0)   ' A binary comparison starting at position 10. 
'Output: 9
MyPos = InstrRev(SearchString, SearchChar, -1, 1)   ' A textual comparison starting at the last position.
'Output: 12

示例 4

Dim SearchString, SearchChar, MyPos
SearchString ="abcdABCD"   ' String to search in.
SearchChar = "a"   ' Search for "a"
MyPos = InstrRev(SearchString, SearchChar, -1, 0)   ' A binary comparison starting at the last position.
'Output: 1
MyPos = InstrRev(SearchString, SearchChar, -1, 1)   ' A textual comparison starting at the last position.
'Output: 5

注:

InStrRev 函数的语法与 InStr 函数的语法不同。