VB Script nach gefundenem Wort die nächsten 4 Zeichen ersetzten
Hallo,
ich möchte mittels vb script in einem text ein wort suchen und
wenn dieses gefunden wurde die nächsten 2 Wörter ersetzen.
Text in txt Datei: " Datum
das ist ein Beispieltext"
Nun möchte ich nicht das Wort "das" ersetzten sondern wenn
" das" gefunden wurde " ist ein " gegen ein Datum austauschen das ich über
eine Inbox eingebe.
mein Code schaut derzeit so aus :
datei=C: \123456.txt
strWorkDir = datei
strText = ""
strText2 = InputBox ("Datum eingeben")
If Suchwort = "123456" Then
strPathFind = "das"
Else
strPathFind = "ein"
End If
Set objFSO = Wscript.CreateObject("Scripting.FileSystemObject")
'# wenn die Datei der Variablen "strWorkDir" existiert dann lese Datei
If objFSO.FileExists(strWorkDir) Then
'# öffnet das Textfile der Variablen strWorkDir zum lesen
Set objFile = objFSO.OpenTextFile(strWorkDir, ForReading)
'# ersetzte strPathfind inhalt gegen strText2 Inhalt
strreplace = Replace(objFile.ReadAll,strPathFind, strText2)
'#öffne strWorkDir zum schreiben
Set objFile = objFSO.OpenTextFile(strWorkDir, ForWriting)
'#schreibe den umgewandelten Text zurück
objFile.Write (strreplace)
ich möchte mittels vb script in einem text ein wort suchen und
wenn dieses gefunden wurde die nächsten 2 Wörter ersetzen.
Text in txt Datei: " Datum
das ist ein Beispieltext"
Nun möchte ich nicht das Wort "das" ersetzten sondern wenn
" das" gefunden wurde " ist ein " gegen ein Datum austauschen das ich über
eine Inbox eingebe.
mein Code schaut derzeit so aus :
datei=C: \123456.txt
strWorkDir = datei
strText = ""
strText2 = InputBox ("Datum eingeben")
If Suchwort = "123456" Then
strPathFind = "das"
Else
strPathFind = "ein"
End If
Set objFSO = Wscript.CreateObject("Scripting.FileSystemObject")
'# wenn die Datei der Variablen "strWorkDir" existiert dann lese Datei
If objFSO.FileExists(strWorkDir) Then
'# öffnet das Textfile der Variablen strWorkDir zum lesen
Set objFile = objFSO.OpenTextFile(strWorkDir, ForReading)
'# ersetzte strPathfind inhalt gegen strText2 Inhalt
strreplace = Replace(objFile.ReadAll,strPathFind, strText2)
'#öffne strWorkDir zum schreiben
Set objFile = objFSO.OpenTextFile(strWorkDir, ForWriting)
'#schreibe den umgewandelten Text zurück
objFile.Write (strreplace)
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 305746
Url: https://administrator.de/forum/vb-script-nach-gefundenem-wort-die-naechsten-4-zeichen-ersetzten-305746.html
Ausgedruckt am: 22.05.2025 um 10:05 Uhr
2 Kommentare
Neuester Kommentar

strFile = "C: \123456.txt"
Set fso = CreateObject("Scripting.Filesystemobject")
content = fso.OpenTextFile(strFile,1).ReadAll()
Set regex = CreateObject("vbscript.regexp")
regex.Global = True: regex.IgnoreCase = True
regex.Pattern = "(das) ([^\s]+ [^\s]+)"
strDatum = InputBox("Datum eingeben:")
fso.OpenTextFile(strFile,2).Write(regex.Replace(content,"$1 " & strDatum))