我有一个函数来读取我从另一个线程here复制的多个字符串。
我在字符串名称strResult中有我需要的整个文档,我的目的是只比较strList上的字段,并在strResult中找到它们。
这是功能:
Function FindString(strCheck,strFind)
Arr = Split(strResult,",")
Flag = 0
我称之为:调用FindString(strResult,strList)
For Each str in Arr
If InStr(strCheck, str) > 0 Then
Flag = 1
Reporter.ReportEvent micPass,"Field Found","Field:"&str&" was found"
Else
Flag = 0
Reporter.ReportEvent micFail,"Field not Found","Field:"&str&" was not found"
End If
Next
If Flag = 1 Then
FindString = True
Reporter.ReportEvent micPass,"Field Found","Field"&str&"was found"
Else
FindString = False
Reporter.ReportEvent micFail,"Field not found","Field"&str&"was not found"
End If
它应该在找不到字段时返回失败,但它只是忽略它们。字符串列表在包含类似“field1”和_“field2”的变量上,主要问题是即使“field3”不是在strList中,它会将其显示为找到,我只希望它获取strList上的字段而不是所有的strResult字符串
我通过拆分值列表修复了这个函数,就像这样
Arr = Split(strCheck,",")
Arr2 = Split(strFind,",")
Flag = 0
For Each str in Arr
For Each str2 in Arr2
If InStr(str, str2) > 0 Then
Flag = 1
Reporter.ReportEvent micPass,"Field "&str2&" Found","Field:"&str&" was found"
Exit For
End If
Next