我有一个由经典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
答案 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
string2
和string1
中包含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)
捕获(也会处理对象问题)