检查一个值是否在数字列表中

Check if a value is in a list of numbers

假设我有一组数字 23,56,128,567,我必须应用一个条件逻辑,如果变量 myData 存在于上述数字组中,那么只有我继续,否则我不.

抱歉,必须查看一些遗留代码,但不确定如何在 VBScript 中执行此操作。

您可以将值放入 Dictionary:

Set list = CreateObject("Scripting.Dictionary")
list.Add  23, True
list.Add  56, True
list.Add 128, True
list.Add 567, True

然后检查字典中是否存在你的值:

If list.Exists(myData) Then
  'do stuff
End If

ArrayList 是另一种选择:

Set list = CreateObject("System.Collections.ArrayList")
list.Add 23
list.Add 56
list.Add 128
list.Add 567

If list.Contains(myData) Then
  'do stuff
End If
If instr("23,56,128,567", myData) then ...

因为这是 vbscript,所以应该可以。

Serenity 的想法还不错,您只需要确保在两个字符串上使用正确的分隔符即可。

例如:

If instr("|23|56|128|567|","|" & myData & "|") then ...

应该可以正常工作,没有误报

你可以用 select 案例来做:

Select case myData
    case 23,56,128,567 
       ' do your stuff ...
End Select