一段VBS代码,求解,谢谢各位大师~

来源:百度知道 编辑:UC知道 时间:2024/06/02 13:35:09
If (InStr(UCase(MTRL), UCase(rs(BOX))) > 0 then
is_match = "No"

请问各位大师,VBS代码中的这一句怎样理解呢?尤其是始终的InStr
谢谢

Instr()是VBS中的字符串搜索函数,它的作用为:
返回某字符串在另一字符串中第一次出现的位置,如果没有搜索到则返回0.

它的用法为:
Instr([起始位置(可选参数,如果省略则重第一个字符的位置开始搜索)],要从中搜索的字符串,要搜索的字符串,[指示在计算子字符串时使用的比较类型的数值](可选参数,默认为进行二进制比较))

示例:
Dim SearchString,SearchChar,Result
SearchString = "ABCabcdefgdcbaCBA"
SearchChar = "a"
Result = Instr(5,SearchString,SearchChar)
'Result将等于14,也就是SearchString中倒数第4个"a"的位置

UCase()则是大写转换函数,它将返回实参字符串的大写形式,与之相对应的还有LCase()函数,它返回字符串的小写形式.
不存在"rs()"这个函数,这个应该是打错了!

If (InStr(UCase(MTRL), UCase(rs(BOX))) > 0 then
is_match = "No"

这两句代码的意思是:
在变量"MRRL"中搜索变量"BOX"中所包含的字符串,如果搜索到,则将变量"is_match"的值赋值为字符串"No"!

不太懂VBS,不过我猜测是不是判断字符串里面是否含有要找的字段。

InStr根据英文意思是在字符串里面的意思。