Regulärer Ausdruck in Pfadangabe.

  • Hi Leute bin neu hier und hoffe sogleich auf eure Hilfe, denn ich steh grad irgendwie aufm Schlauch. :)

    Und zwar möchte ich eine Datei öffen die über einem bestimmten Pfad erreichbar ist.
    Also beispielsweise C:\\ordner1\ordner2\test.txt
    Nun ist es aber so, dass der Pfad nicht statisch ist und der Ordner2 beispielsweise jedesmal einen anderen Namen hat.

    Gibt es irgendeine Möglichkeit einen Regulären Ausdruck in die Pfadangabe einzubauen?
    Hab schon rumprobiert bin aber zu keinem Ergebnis gekommen.

    Schon mal vielen Dank im Voraus.

    Grüße Max

  • Was möchtest du denn machen?
    Die Datei finden oder weisst du (bzw. das Script) wo die Datei ist und kennt den Pfad?

    MFG FireFlyer

    *Paradox ist, wenn man sich im Handumdrehen den Fuss bricht* :D

  • Wo die Datei liegt weis ich, nur ist eben der Pfad nicht statisch.
    z.b.
    C:\\ordner1\ordner dessen name sich immer ändert\datei.txt

    Die möchte ich dann bearbeiten. Nur komme ich nicht an die Datei ran da der Pfad nicht immer der Gleiche ist.
    Wie bringe ich also dem Skript bei die Datei trotzdem zu finden?

  • Spoiler anzeigen
    [autoit]

    #include <File.au3>

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

    $path = "C:\Windows\"
    $file = "cmd.exe"

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

    ;Der richtige Pfad sollte sein C:\Windows\System32\cmd.exe, System32 ist also der Ordner den das Script finden soll

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

    $folders = _FileListToArray($path, "*", 2)
    For $i = 1 To UBound($folders) -1
    If FileExists($path&$folders[$i]&"\"&$file) Then
    MsgBox(0, "Datei gefunden", "Datei gefunden in "&$path&$folders[$i]&"\"&$file)
    ExitLoop
    EndIf
    Next

    [/autoit]

    Das ist jetzt nur ein Beispielscript, es gibt deutlich bessere die auch in mehreren Schichten suchen können (Stichwort Rekursive Dateisuche)
    Aber wenn es nur ein Ordner ist der sich ändert dann sollte das script hier funktionieren.

    MFG FireFlyer

    *Paradox ist, wenn man sich im Handumdrehen den Fuss bricht* :D