サンプル データが代表的なものである場合は、グループ化された正規表現を使用します。
Dim sAll : sAll = goFS.OpenTextFile("..\data\17050037.txt").ReadAll
Dim rePair : Set rePair = New RegExp
rePair.Global = True
rePair.Multiline = True
rePair.Pattern = "^(\d+)\r\n^(\d+)\r\n"
Dim oMTS : Set oMTS = rePair.Execute(sAll)
Dim oMt
For Each oMT IN oMTS
WScript.Echo "{"
WScript.Echo oMT.SubMatches(0) & ","
WScript.Echo oMT.SubMatches(1)
WScript.Echo "}"
Next
出力:
{
11111,
22222
}
{
33333,
44444
}
{
55555,
66666
}
{
77777,
88888
}
追加した:
ライン ループを使用する場合は、次の方法を試してください。
Dim file : Set file = goFS.OpenTextFile("..\data\17050037.txt")
Dim state : state = 0
Do Until file.AtEndOfStream
Dim Line : Line = file.ReadLine
Select Case state
Case 1, 3
WScript.Echo "{"
WScript.Echo Line & ","
state = state + 1
Case 2, 4
WScript.Echo Line
WScript.Echo "}"
state = state + 1
Case Else
If "0x" = Left(Line, 2) Then state = 1
End Select
Loop
file.Close