文字列「Test Case」&のインデックスをtxtファイルで検索する必要があります。VBSスクリプトを使用してテキストファイル内の特定の文字列を検索
私はあなたがこのファイルで見つけることができるラインの例を与える:
<tr><td><a href="../../Login/Log_ in_U1A1">Log_ in_U1A1</a></td></tr>
<tr><td><a href="../Test case 5 DD/Form1">Form1</a></td></tr>
あなたは2行目に見ることができるように私は、文字列「テストケース」の発生を持っています。
私がしたいことは、「テストケース5」が現れる行に先行する行に別の特定の文字列を追加することです。たとえば:
<tr><td><a href="../../Login/Log_ in_U1A1">Log_ in_U1A1</a></td></tr>
<tr><td><a href="../../Logs/DD/Beginning_of_DD_TC5.html">Beginning_of_DD_TC5</a></td></tr>
<tr><td><a href="../Test case 5 DD/Form1">Form1</a></td></tr>
それは私が追加行はテストケースの数に依存インデックスiを持っている、と私は「テストケース」&私が最初に出現する前にそれを追加する必要があり、私はいけないことも重要です次のような場合に注意してください。
InStr関数は、一例で働いていた場合、私はテストした:それは私の部分文字列を認識し、
Dim objFSO, filepath, objInputFile, tmpStr, substrToFind
Set objFSO = CreateObject("Scripting.FileSystemObject")
filepath = "C:\VBS\filediprova.txt"
substrToFind = "<tr><td><a href=" & chr(34) & "../Test case 5"
Set objInputFile = objFSO.OpenTextFile(filepath)
tmpStr = objInputFile.ReadLine
If InStr(tmpStr, substrToFind) <= 0 Then
WScript.Echo "No matches"
Else
WScript.Echo "Found match"
End If
そして、それは動作します。私は同じInStr関数を使用し、私はいくつかの問題を抱えているより多くの行を持つファイルをループしようとすると、今
<tr><td><a href="../Test case 5 DD/Form1">Form1</a></td></tr>
:この小さな例ではtxtファイルにのみfollowinglineをcontans。
Do until objInputFile.AtEndOfStream
strToAdd = "<tr><td><a href=" & chr(34) & "../../Logs/DD/Beginning_of_DD_TC" & CStr(index) & ".html" & chr(34) & ">Beginning_of_DD_TC" & CStr(index) & "</a></td></tr>"
substrToFind = "<tr><td><a href=" & chr(34) & "../Test case " & index
firstStr = "<?xml version" 'my file always starts like this
tmpStr = objInputFile.ReadLine
If InStr(tmpStr, substrToFind) <= 0 Then
If Instr(tmpStr, firstStr) > 0 Then
text = tmpStr 'to avoid the first empty line
Else
text = text & vbCrLf & tmpStr
End If
Else
text = text & vbCrLf & strToAdd & vbCrLf & tmpStr
index = index + 1
End If
Loop
何が問題になっています: 私は、次のループを書きましたか?
を期待していた結果ですが、私はどこから始めるべきかわからなかった、彼らは私にアラム語のように見える!私がJavaとVisual Basicを知っているにもかかわらず、私はそれらを使用して敢えてしなかった。私はこの可能性を考慮していきますが、正規表現についてのチュートリアル(ダミー用)の良いリンクを教えてください。 – Luceye85
[こちら](http://www.codeproject.com/Articles/939/An-Introduction-to-Regular-Expressions)、もちろん[documentation](http://msdn.microsoft.com/en/ -us/library/6wzad2b2)。 –