如何过滤字典vbscript?

时间:2018-03-09 10:33:39

标签: vbscript

我有一个脚本,它作为结果字典给出。最初收入是一个字符串,格式为a = abc,b = def,c1 = ghj,c2 = klm,d1 = 123,d2 = 456.

脚本正在创建字典

For i = 0 to Wscript.Arguments.Count - 1
myArray = split(Wscript.Arguments(i),"=",-1,1)
objDict.Add myArray(0),myArray(1)

我需要在字典中添加额外的对,例如C = ghj,klm(组合c1和c2)和D = 123,456。因为vbs字典不能将数组作为值,所以我现在堆叠了。 / p>

是否可以使用过滤器创建新的字典/数组?以及如何实现所需的结果?

例如我有一个功能

Sub attachmentf()
Dim i
Dim x
Dim y(1)
Dim z
Dim a
Dim b
Dim c
Dim d

a = objDict.Keys  
c=Filter(a,"attachment")
    For i=0 to 1 'ubound(c)
    d = objDict.item(c(i)) 
    y(i) = d
    wscript.echo y(i)
    dictResults.Add "ATTACHMENT", y(i)
    next
end Sub

它在echo步骤返回数组,但是它给了我错误:它一旦我尝试将它添加到字典中,它就不符合标准键/值对格式。 如果我尝试使用unound或不提供数组大小(例如Dim y())...它还没有工作......任何想法?

1 个答案:

答案 0 :(得分:0)

  

由于vbs字典不能将数组作为值[...]

是什么让你相信?

a /= b[:, None]
a /= b[None, :]