ingo: String beschneiden

Hallo zusammen,

ich habe in Perl einen Dateipfad

$test="c:/dir1/dir2/datei1.txt"

daraus möchte ich mir nur den reinen Pfad extrahieren =

$test2="c:/dir1/dir2/"

Natürlich ändern sich die Pfade ständig. Meine erste Idee war substr,
ich habe aber keinen Befehl gefunden um das Ende (letztes "/") zu finden. Gibt es einen solchen oder wie kann man es sonst machen? Sicher geht es mit regulären Ausdrücken, da ich mit denen aber auf Kriegsfuß stehe würde ich mich auch in diesem Fall über eine Lösung freuen.

Gruß Ingo

  1. Halihallo ingo

    ich habe in Perl einen Dateipfad
    $test="c:/dir1/dir2/datei1.txt"
    daraus möchte ich mir nur den reinen Pfad extrahieren =
    $test2="c:/dir1/dir2/"

    perldoc File::Basename

    Natürlich ändern sich die Pfade ständig. Meine erste Idee war substr,
    ich habe aber keinen Befehl gefunden um das Ende (letztes "/") zu finden. Gibt es einen solchen oder wie kann man es sonst machen? Sicher geht es mit regulären Ausdrücken, da ich mit denen aber auf Kriegsfuß stehe würde ich mich auch in diesem Fall über eine Lösung freuen.

    Eine Möglichkeit wäre ein perldoc -f split  des directory-delimiters und das
    zusammenhefen der ersten, bis (und ohne) letztem Arrayelement. Aber plattformunabhängiger
    und deshalb besser wäre File::Basename.

    Viele Grüsse

    Philipp

    --
    RTFM! - Foren steigern das Aufkommen von Redundanz im Internet, danke für das lesen der Manuals.
    Selbstbedienung! - Das SelfForum ist ein Gratis-Restaurant mit Selbstbedienung, Menüangebot steht in den </faq/> und dem </archiv/>.
    1. Danke, war genau der richtige Befehl.

      Gruß Ingo

      perldoc File::Basename

  2. abend,

    (siehe http://www.faq4all.de/languages/faq/75.htm)

    mfg,
    (tanz das)
    Z.N.S.

    --
    <img src="http://www.dmp-web.de/comunicout/neubauten.gif" border="0" alt="">