Arrays VBScript数组?否则
我是VBScript新手,我们使用的解决方案是VBScript来操作数据 执行if-then-else不是问题,但是当我有一个大数据集,输出很少时,我希望使用某种数组,我可以将值存储在数组中,并且仍然使用if-then-else吗Arrays VBScript数组?否则,arrays,vbscript,Arrays,Vbscript,我是VBScript新手,我们使用的解决方案是VBScript来操作数据 执行if-then-else不是问题,但是当我有一个大数据集,输出很少时,我希望使用某种数组,我可以将值存储在数组中,并且仍然使用if-then-else吗 If Input1 = "A1" Then Output0 = "A" ElseIf Input1 = "B1" Then Output0 = "B" Else Output0 = "C" End If 需
If Input1 = "A1" Then
Output0 = "A"
ElseIf Input1 = "B1" Then
Output0 = "B"
Else
Output0 = "C"
End If
需求非常基本,但环顾四周后,似乎在语法上有点混乱
简单的if-then-else很好,但是需要写很多if-then-else
If Input1 = "A1" Then
Output0 = "A"
ElseIf Input1 = "B1" Then
Output0 = "B"
Else
Output0 = "C"
End If
我需要实现的是,请注意,值不一样,修剪也不是下面的要求
If Input1 = "A1,A2,A3" Then
Output0 = "A"
ElseIf Input1 = "B1,B2,B3" Then
Output0 = "B"
Else
Output0 = "C"
End If
使用SQL,我将在语句中执行一个
,VBscript的工具将输入映射到输出,这是最简单的方法。因此,请使用一个:
>> Set d = CreateObject("Scripting.Dictionary")
>> d("A1") = "A"
>> d("A2") = "A"
>> d("B1") = "B"
>> d("C") = "C"
>> For Each k In Split("C B1 A2 B2 A1")
>> If d.Exists(k) Then
>> WScript.Echo k, d(k)
>> Else
>> WScript.Echo k, "???"
>> End If
>> Next
>>
C C
B1 B
A2 A
B2 ???
A1 A
VBscript将输入映射到输出的工具是。因此,请使用一个:
>> Set d = CreateObject("Scripting.Dictionary")
>> d("A1") = "A"
>> d("A2") = "A"
>> d("B1") = "B"
>> d("C") = "C"
>> For Each k In Split("C B1 A2 B2 A1")
>> If d.Exists(k) Then
>> WScript.Echo k, d(k)
>> Else
>> WScript.Echo k, "???"
>> End If
>> Next
>>
C C
B1 B
A2 A
B2 ???
A1 A
为了完整性,您还可以使用语句,它允许在案例中使用表达式列表
Select Case Input1
Case "A1", "A2", "A3"
Output0 = "A"
Case "B1", "B2", "B3"
Output0 = "B"
Case "C1", "C2", "C3"
Output0 = "C"
Case Else
Output0 = "D"
End Select
为了完整性,您还可以使用语句,它允许在案例中使用表达式列表
Select Case Input1
Case "A1", "A2", "A3"
Output0 = "A"
Case "B1", "B2", "B3"
Output0 = "B"
Case "C1", "C2", "C3"
Output0 = "C"
Case Else
Output0 = "D"
End Select
您看过Filter命令了吗?@JBKing根据OP给出的示例,Filter()
可以工作,但如果值变化不大。例如,AB1
将返回Output0=“A”
和Output0=“B”
。您看过Filter命令了吗?@JBKing根据OP给出的示例,Filter()
可以工作,但如果值变化不大。例如,AB1
将返回Output0=“A”
和Output0=“B”
。出于兴趣,您使用什么来生成代码示例?我的大脑和基于的REPL。备选方案:感谢您的建议,但这似乎与执行许多if-then-else语句相同,在进一步挖掘之后,我将采用这种方法,但出于兴趣,我将首先构建一个sql表,然后将其称为数据的中间表,你用什么来生成你的代码样本?我的大脑和一个基于。备选方案:感谢您的建议,但这似乎与执行许多if-then-else语句相同,在进一步挖掘之后,我将采用这种方法,但我将首先构建一个sql表,然后将其称为dataPerfect的中间表,而不是以End Select not Case结尾对此表示抱歉,我应该测试它完美,而不是以End Select not CASE结束抱歉,我应该测试它