Text finden und ersetzen

  • Hallo Leute,

    ich habe ein Problem mit einer TXT Datei die ich immer wieder bearbeiten muss.
    Was ist zu tun.

    Ich muss aus einer TXT Datei folgendes herrauslöschen z.b. " D:\tzestdaten\test0000\ " wobei die test0000 auch test0001 oder test0100 sein kann und der wert der zu löschen ist kann auch mehrfach in einer Zeile vorkommen und auch die Startporition ist unterschiedlich.

    Giebt es eine möglichkeit ind einen Stringreplace ein * im Aufruf einzubauen ???

    Leider gibt google nicht aussagekräftige her. Vieleicht könntet Ihr mir helfen.
    Danke schon mal im vorraus.

    McBaldrian

    Solange
    du den anderen sein Anderssein nicht verzeihen kannst, bist du noch weit ab vom
    Wege der Weisheit.

  • Hi,

    [autoit]

    StringRegExp()

    [/autoit]

    wird dir weiterhelfen!
    Allerdings ist es aussichtslos, anhand deiner Beschreibung ein Muster und somit ein Suchpattern zu erstellen!
    Poste eine Testdatei und gib an, welche Daten gelöscht werden sollen, bzw. wie das Endergebnis auszusehen hat!

  • Giebt es eine möglichkeit ind einen Stringreplace ein * im Aufruf einzubauen ???


    In StringReplace nicht aber in StringRegExpReplace.
    Dort wird die dynamische Angabe des Suchstrings aber nicht durch einfache Wildcards sondern durch viel mächtigere aber auch komplexere reguläre Ausdrücke erreicht.
    Das Konzept der regulären Ausdrücke gibt es in so gut wie jeder Programmiersprache und es ist sehr empfehlenswert sich diese anzueignen auch wenn der Einstieg etwas schwierig erscheinen mag.
    Es gibt ein Menge Tutorials zum Thema. Eines wäre folgendes: >>StringRegExp Tutorial<<

    Dann kann man z.B. folgendesfür deinen Anwendungsfall basteln:

    [autoit]

    StringRegExpReplace($s_String, "[A-Z]:\\[\w\\]+\\test\d+\", "")

    [/autoit]


    Hab das Pattern mal nur nach deinen Angaben gestaltet.
    Je nach dem wie die Pfade aufgebaut sind kann/muss man es noch abändern.