检查值是否在数字列表中

时间:2015-01-13 21:17:01

标签: vbscript

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

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

4 个答案:

答案 0 :(得分:11)

您可以将值放在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

答案 1 :(得分:1)

宁静的想法并不是那么糟糕,你只需要确保在两个字符串上都使用正确的分隔符。

例如:

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

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

答案 2 :(得分:0)

您可以选择一个案例:

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

答案 3 :(得分:-4)

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

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