检查一个值是否在数字列表中
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
假设我有一组数字 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