Txt File Inhalt auslesen

  • Hallo ich möchte mithilfe von Autoit txt Files auslesen. In diesen sind jede Menge Infos enthalten. Für mich wichtig sind eigentlich nur die SRX Nummern. Beispiel: SRX00052
    Diese möchte ich alle in ein txt File kopieren lassen. Wie kann ich dies bewältigen ?

    Gruss Ru642

    Einmal editiert, zuletzt von ru642 (14. Februar 2013 um 14:20)

  • [autoit]

    FileRead
    StringRegExp
    FileWrite

    [/autoit]

    Sind die SRX-Nummern immer so aufgebaut?
    Gibt es in der Textdatei irgendwas mit einem ähnlichen Format, was beim Filtern Probleme bereiten könnte?

  • [autoit]

    FileRead
    StringRegExp
    FileWrite

    [/autoit]

    Sind die SRX-Nummern immer so aufgebaut?
    Gibt es in der Textdatei irgendwas mit einem ähnlichen Format, was beim Filtern Probleme bereiten könnte?

    Danke erstmal für die schnelle Antwort.
    Aufgebaut ist die Nummer immer so natürlich andere Nummern aber sonst gleich.
    Die SRX Nummern fangen immer mit "SRX0**** an und sind alle am Anfang jeder Zeile.
    Achtung es können dazwischen noch andere Daten am Anfang stehen.

    Leider kann ich keinen Ausschnitt aus der Datei zeigen da dies ein Ausgabe File unseres Ticketsystems ist und darin Kunden vorkommen.

  • Dann würde ich das so machen:

    [autoit]

    Local $Data1 = FileRead("File1.txt")
    Local $SRE = StringRegExp($Data1, "\b(SRX\d+)\b", 3)
    If @error Then Exit
    Local $i, $Data2 = ""
    For $i = 0 To UBound($SRE)-1
    $Data2 &= $SRE[$i] & @CRLF
    Next
    FileWrite("File2.txt", $Data2)

    [/autoit]
  • So in etwa?

    [autoit]

    #include <Array.au3>

    [/autoit][autoit][/autoit][autoit]

    $sString = "SRX00052" & @CRLF & "Other Data" & @CRLF & "SRX00053"
    $aRes = StringRegExp($sString, "(SRX\d+)", 3)

    [/autoit][autoit][/autoit][autoit]

    _ArrayDisplay($aRes)

    [/autoit]

    Falls du nur die Zahlen willst, nimm stattdessen dieses Pattern:

    Code
    "SRX(\d+)"

    Edit: Da war wohl jemand schneller ^^.