VB 匹配位置函数InStr()和匹配位置反查函数InStrRev()的区别

最好请举个例子 谢谢
但是 print InStr(1,"asdfghj","df") 显示为3
print InStrRev("asdfghj","df")结果还是为3....

VB 匹配位置函数InStr()和匹配位置反查函数InStrRev()的区别是:

InStr函数返回一个字符串在另一字符串中(从字符串左起)最先出现的位置。

InStrRev函数返回一个字符串在另一个字符串中(从字符串的末尾算起)出现的位置,

    InStr 函数示例

本示例使用 InStr 函数来查找某字符串在另一个字符串中首次出现的位置。

Dim SearchString, SearchChar, MyPos
SearchString ="XXpXXpXXPXXP"   ' 被搜索的字符串。
SearchChar = "P"   ' 要查找字符串 "P"。

' 从第四个字符开始,以文本比较的方式找起。返回值为 6(小写 p)。
' 小写 p 和大写 P 在文本比较下是一样的。
MyPos = Instr(4, SearchString, SearchChar, 1)  

' 从第一个字符开使,以二进制比较的方式找起。返回值为 9(大写 P)。
' 小写 p 和大写 P 在二进制比较下是不一样的。
MyPos = Instr(1, SearchString, SearchChar, 0)

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

MyPos = Instr(1, SearchString, "W")   ' 返回 0。

温馨提示:答案为网友推荐,仅供参考
第1个回答  2010-03-08
instr是从前往后查找第一个匹配的字符串的位置,而instrrev是从后往前找···呵呵···
这个是因为查出来的位置都是相对于字符串的位置,楼主试试看
print InStr(1,"asdfghjdf","df")
print InStrRev("asdfghjdf","df")
这个就不一样了··因为碰到的第一个匹配的位置不一样··本回答被提问者和网友采纳
相似回答