SnAkEhIpS
asked on
How to ignore alphabetical case in an array comparison-VBScript-
The attached vbscript compares 2 arrays and writes any discrepancies to a text file. A problem arises when the name of the element in the first array (arrFirst) does not match the alphabetical case of the element in the second array (arrSecond). For example, "Folder12" in arrFirst should be considered a match with "foLdEr12" in arrSecond. How can I ignore case in comparison of these arrays?
Const FOR_WRITING = 2
Dim objFso
Dim objOutputFile
Dim strOutputFile
Dim arrFirst
Dim arrSecond
Dim strElementFirst
Dim strElementSecond
Dim blnExistsInSecond
strOutputFile = "C:\temp\Differences.txt"
Set objFso = CreateObject("Scripting.FileSystemObject")
If objFso.FileExists(strOutputFile) Then
Set objOutputFile = objFso.OpenTextFile(strOutputFile,FOR_WRITING)
Else
Set objOutputFile = objFso.CreateTextFile(strOutputFile)
End If
arrFirst = arrFolders
arrSecond = Array("F","G","H","A","B","Z")
'the problem arises when the name of the element in arrFirst does not match the case of the element in arrSecond
For Each strElementFirst In arrFirst
blnExistsInSecond = False
For Each strElementSecond In arrSecond
If strElementFirst = strElementSecond Then
blnExistsInSecond = True
Exit For
End If
Next
If Not blnExistsInSecond Then
objOutputFile.WriteLine strElementFirst & " does not exist in the second array"
End If
Next
ASKER CERTIFIED SOLUTION
membership
This solution is only available to members.
To access this solution, you must be a member of Experts Exchange.
ASKER