'Источник
'sSrcFile = "C:\scripts\log\log1_"& d & "_" & m & "_" & Year(Date) & ".txt"
sScrFile = "C:\Users\tfcor\Desktop\12\log1_08_2016.txt"
'Эталон
sEtalonFile = "C:\Users\tfcor\Desktop\12\ЭТАЛОН_log_02_08_2016.txt"
'Файл-разницы (для записи)
sDiffFile = "C:\Users\tfcor\Desktop\12\Diff_result.txt"
Set oFSO = CreateObject("Scripting.FileSystemObject")
'Чтение файла-этолона
Set oTS = oFSO.OpenTextFile(sEtalonFile, 1, False)
sEtaAll = oTS.ReadAll()
oTS.Close
'Нормализация путей эталона
' \DD.MM.YYYY\
sCurDate1 = "\" & Right("0" & Day(Now), 2) & "." & Right("0" & Month(Now), 2) & "." & Year(Now) & "\"
' MM_DD
sCurDate2 = Right("0" & Month(Now), 2) & "_" & Right("0" & Day(Now), 2)
Set oRegExp = CreateObject("VBScript.RegExp")
oRegExp.Global = True
oRegExp.MultiLine = True
'замена даты
oRegExp.Pattern = "\\\d{2}\.\d{2}\.\d{4}\\"
sEtaAll = oRegExp.Replace(sEtaAll, sCurDate1)
'удаление нумерации
oRegExp.Pattern = "^\d{1,3}\.\s*"
sEtaAll = oRegExp.Replace(sEtaAll, "")
'замена даты в окончании имени файла
oRegExp.Pattern = "(\d{2}_\d{2})(\..*?)?$"
sEtaAll = oRegExp.Replace(sEtaAll, sCurDate2 & "$2")
aEta = Split(sEtaAll, vbCrLf)
Set oDict = CreateObject("Scripting.Dictionary")
oDict.CompareMode = 1
For i = 0 To UBound(aEta)
If Len(aEta(i)) <> 0 Then
If Not oDict.Exists(aEta(i)) Then oDict.Add aEta(i), 0
End If
Next
'Чтение файла-источника
Set oTS = oFSO.OpenTextFile(sScrFile, 1, False)
sSrcAll = oTS.ReadAll()
'удаление нумерации
oRegExp.Pattern = "^\d{1,3}\.\s*"
sSrcAll = oRegExp.Replace(sSrcAll, "")
aSrc = Split(sSrcAll, vbCrLf)
oTS.Close
For i = 0 To UBound(aSrc)
If oDict.Exists(aSrc(i)) Then oDict.Remove (aSrc(i))
Next
If oDict.Count <> 0 Then
Set oTS = oFSO.OpenTextFile(sDiffFile, 2, True)
For Each Key In oDict.Keys
oTS.WriteLine (Key)
Next
oTS.Close
End If