比如想检查一个变量是否在列表中,原来可以很方便的
if Var in List
v2 光让参考 is 函数,看了半天也没看出怎么实现
因为 value1,value2,...
这种不通用所以就不支持了吧
现在是将这个声明为数组 []
contains
的话将下面的等于表达式换成 InStr
函数比较
list := [1, 2, 3, 4, "ss"]
s1 := "SS"
;函数方法
MsgBox(IsVarInArr(s1, list, false))
MsgBox(IsVarInArr(s1, list))
;临时方法
isIn := false
for i in list
{
if i = s1
{
isIn := true
break
}
}
MsgBox(isIn)
IsVarInArr(item, arr, ignoreCase := true)
{
if ignoreCase
{
for i in arr
if item = i
return true
}
else
{
for i in arr
if item == i
return true
}
return false
}
2 Likes
试了下ChatGPT, 和楼上回答一个思路但是简洁一些貌似
list := ["apple", "banana", "cherry"]
var := "banana"
if InStr(list, var)
{
msgbox % "The variable '" . var . "' is in the list: " . list
}
else
{
msgbox % "The variable '" . var . "' is not in the list: " . list
}
你这是不能运行的代码呀…
instr只接受字符串,你传数组干什么…
另外V2很少用%
号了
感谢大佬赐教,不好意思回复晚了