【QTP】字符串比较函数

2011-12-22  段辰 

有些时候QTP自带的字符检查点不是很灵活,那么自己动手来写个“检查点”就很有用了,主要用到字符串比较函数——Instr()。下面是该函数相关说明:

描述 
返回某字符串在另一字符串中第一次出现的位置。 
语法 
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 "。 

MyPos   =   Instr(4,   SearchString,   SearchChar,   1)     '文本比较从第四个字符开始返回   6。 
MyPos   =   Instr(1,   SearchString,   SearchChar,   0)   '二进制比较从第1个字符开始返回   9。 
MyPos   =   Instr(SearchString,   SearchChar)         '返回   9。 
'缺省为二进制比较(最后一个参数省略)。 
MyPos   =   Instr(1,   SearchString,   "W ")   '二进制比较从第1个字符开始返回   0   (没有找到   "W ")。

更详细的关于Instr函数的说明可以在QTP的帮助中查找。
在用这个函数做检查点时,需要手工输出检查结果,关于调用文件的操作,我会再写一篇。
670°/6704 人阅读/0 条评论 发表评论

登录 后发表评论