के साथ एक टेक्स्ट फ़ाइल में विशिष्ट स्ट्रिंग पाएं मुझे एक txt फ़ाइल में स्ट्रिंग "टेस्ट केस" & अनुक्रमणिका खोजने की आवश्यकता है।वीबीएस स्क्रिप्ट
<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>
आप दूसरी पंक्ति मैं स्ट्रिंग "टेस्ट प्रकरण" की एक घटना है में देख सकते हैं:
मैं तुम्हें लाइनों आप इस फ़ाइल में पा सकते हैं का एक उदाहरण देते हैं।
मैं जो करना चाहता हूं वह उस पंक्ति में एक और विशेष स्ट्रिंग जोड़ना है जहां "टेस्ट केस 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>
यह भी महत्वपूर्ण है कि लाइन मैं जोड़ने के एक सूचकांक मैं जो टेस्ट केस संख्या पर निर्भर करता है, और मैं का "टेस्ट प्रकरण" पहली घटना से पहले यह जोड़ने की जरूरत है & मैं, मुझे नहीं है है निम्नलिखित घटनाओं के बारे में परवाह है।
मैं अगर 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
और यह काम करता है, यह मेरी सबस्ट्रिंग को पहचानता है। इस छोटे से उदाहरण में txt फ़ाइल केवल followingline Contans:
<tr><td><a href="../Test case 5 DD/Form1">Form1</a></td></tr>
अब, जब मैं भी बहुत कुछ लाइनों के साथ एक फ़ाइल पर पाश करने की कोशिश मैं कुछ समस्या है, मैं एक ही InStr समारोह का उपयोग करें।
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
क्या गलत है: मैं निम्नलिखित पाश लिखा?
उम्मीद कर रहा हूँ मैं भी reg भाव उपयोग करने के बारे में सोच रहा था है, लेकिन मुझे नहीं पता था कि कहां से शुरू करना है, वे मेरे लिए अराजक लगते हैं! भले ही मैं जावा और दृश्य मूल को जानता हूं, मैंने कभी उनका उपयोग करने की हिम्मत नहीं की। मैं इस संभावना को ध्यान में रखूंगा, लेकिन क्या आप मुझे रेगेक्स के बारे में एक ट्यूटोरियल (डमी के लिए) के लिए एक अच्छा लिंक दे सकते हैं? – Luceye85
कोशिश करें [यह] (http://www.codeproject.com/Articles/939/An- परिचय-to- नियमित- अभिव्यक्तियां), और निश्चित रूप से [दस्तावेज़ीकरण] (http://msdn.microsoft.com/en -US/पुस्तकालय/6wzad2b2)। –