Hallo zusammen,
ich bin seit einiger Zeit am Verzweifeln.
Ich versuche gerade ein kleines Tool zu schreiben, das folgende Aufgabe erfüllen soll.
Ich habe eine txt Datei, in der eine unbekannte Anzahl an Zeilen sind. Die Zeilen beginnen immer mit drei Zahlen, danach folgen 4 Ziffern gefolgt von einem Text.
Ziel ist es, aus der Datei alle Texte aus den Zeilen die mit XXX6228 beginnen auszulesen. In jeder Quelldatei ist mindestens eine solche Zeile vorhanden. Maximal sind diese nicht begrenzt.
Die Texte sollen mit einem Komma als Trennzeichen in eine neue Datei kopiert werden.
Hinter meinem (Lösungs)Ansatz steckt folgende Logik:
Die Quelldatei in ein Array einlesen-->Das Array Zeile für Zeile überprüfen und zutreffende Ergebnisse in die Zieldatei schreiben.
Momentan habe ich das problem das der Reguläre Ausdruck nicht das was ich Suche zurück gibt.
Hier mal der Entsprechende Quellcode:
[autoit]#include
[/autoit][autoit][/autoit][autoit][/autoit][autoit][/autoit][autoit][/autoit][autoit][/autoit][autoit]#include
[/autoit][autoit][/autoit][autoit]$tmp=""
[/autoit][autoit][/autoit][autoit][/autoit][autoit][/autoit][autoit]$exit=0
[/autoit][autoit][/autoit][autoit][/autoit][autoit][/autoit][autoit]_FileReadToArray("C:\test\quelle.txt",$tmp)
[/autoit][autoit][/autoit][autoit][/autoit][autoit][/autoit][autoit];_FileWriteFromArray("C:\test\Gelesen.txt",$tmp,0)
[/autoit][autoit][/autoit][autoit]$groese = $tmp[0]
[/autoit][autoit][/autoit][autoit][/autoit][autoit][/autoit][autoit]While $groese>0
[/autoit][autoit][/autoit][autoit][/autoit][autoit][/autoit][autoit]$test=$tmp[$groese]
[/autoit][autoit][/autoit][autoit]$erg = StringRegExp($test,"(?<=\d\d\d6228).+",3)
[/autoit][autoit][/autoit][autoit]$groese = $groese-1
[/autoit][autoit][/autoit][autoit][/autoit][autoit][/autoit][autoit][/autoit][autoit][/autoit][autoit]WEnd
[/autoit][autoit][/autoit][autoit][/autoit][autoit][/autoit][autoit]_ArrayDisplay($erg)
[/autoit]Kann mir irgendwer verraten was ich falsch mache?