VBScript Instr函数始终返回0

时间:2017-02-09 19:24:05

标签: vbscript

我有一个由经典ASP编写的应用程序。我需要比较string1是否包含string2所以我使用instr函数。但是,即使string1包含string2,它也总是返回0.我的代码问题在哪里?

function Findstring(string1,string2)
    dim findstr,loc

    on error resume next
    loc= instr(1,Lcase(string1),Lcase(string2),1)
    if loc>0  then
        findstr=true

    else
        findstr= false

    end if


  end function

1 个答案:

答案 0 :(得分:1)

Function FindString( string1, string2 )
    FindString = False 
    On Error Resume Next
    FindString = CBool( InStr(1, LCase(string1), LCase(string2), 1) > 0 )
End Function

如果在True string2string1中包含False,则此函数将返回CBool

注意:如果比较运算符>已生成布尔值,为什么Null?因为我们可以调用函数传递Null值。如果要比较的任何字符串为InStr,则Null函数会返回Null > 0,而测试Null会计算为CBool( Null )。但On Error会生成错误,由前一个from collections import defaultdict bins = defaultdict(list) for item in input_list: bins[item[2]].append(item) 捕获(也会处理对象问题)