我想知道如何通过字符串或数组比较 2 个列表,并获取未比较的值。
我正在考虑类似于 PHP 函数的东西array_diff()
。
经典的 ASP 可以吗?
我想知道如何通过字符串或数组比较 2 个列表,并获取未比较的值。
我正在考虑类似于 PHP 函数的东西array_diff()
。
经典的 ASP 可以吗?
您可以使用 Scripting.Dictionary:
Public Function RemoveMatches(byVal arrRemove(), byVal arrMatches)
Dim sdScriptingDictionary, Item, arrReturn
Set sdScriptingDictionary = CreateObject("Scripting.Dictionary")
sdScriptingDictionary.RemoveAll
sdScriptingDictionary.CompareMode = BinaryCompare
For Each itemRemove in arrRemove
For Each itemMatches in arrMatches
If itemMatches<>itemRemove Then
'Response.Write "ADD:" & itemRemove & ":" & itemMatches & "<br />"
If Not sdScriptingDictionary.Exists(itemRemove) Then sdScriptingDictionary.Add itemRemove, itemRemove
Else
'Response.Write "REMOVE:" & itemRemove & ":" & itemMatches & "<br />"
If sdScriptingDictionary.Exists(itemRemove) Then sdScriptingDictionary.Remove(itemRemove)
Exit For
End If
Next
Next
arrReturn = sdScriptingDictionary.keys
'Clean Up
Erase arrRemove
Set arrRemove = Nothing
Erase arrMatches
Set arrMatches = Nothing
sdScriptingDictionary.RemoveAll
Set sdScriptingDictionary = Nothing
RemoveMatches = arrReturn
End Function