Решение RegExp (включено в тестовый драйвер):
Dim sNewTxt : sNewTxt = "abracadabra" & vbCrLf
Dim reEdit : Set reEdit = New RegExp
reEdit.Pattern = Join(Array( _
"(" _
, "[\S\s]*?" _
, "refname=""Microsoft.VSTS.Build.IntegrationBuild""" _
, "[\S\s]*?\r\n" _
, "[\S\s]*?\r\n" _
, "[\S\s]*?\r\n" _
, "[\S\s]*?\r\n" _
, ")" _
, "(" _
, "[\S\s]*?" _
, ")" _
), "")
Dim sFolder : sFolder = "..\testdata\6254577"
Dim oFile, s1, s2
For Each oFile In goFS.GetFolder(sFolder).Files
Select Case Left(oFile.Name, 1)
Case "a"
s1 = oFile.OpenAsTextStream().ReadAll()
s2 = reEdit.RePlace(s1, "$1" & sNewTxt & "$2")
goFS.CreateTextFile(goFS.BuildPath(sFolder, Replace(oFile.Name, "a", "c"))).Write s2
Case "c"
s1 = oFile.OpenAsTextStream().ReadAll()
s2 = goFS.OpenTextFile(goFS.BuildPath(sFolder, Replace(oFile.Name, "c", "b"))).ReadAll()
If s1 = s2 Then
WScript.Echo "ok", oFile.Name
Else
WScript.Echo "not ok", oFile.Name
WScript.Echo s1
WScript.Echo "-----------"
WScript.Echo s2
WScript.Echo "==========="
End If
End Select
Next
В нем используется тот факт, что .Replace на несовпадающем входе не меняет вход.Это делает его более надежным, чем приведенные выше решения.