Aqua: RegeXP für Bilder

Hallo Leute!

$foo="Das ist ein irgendein.jpg  text welchen ich einfach.gif nur so schreibe.png"

@array  soll nun  ("irgendein.jpg", "einfach.gif", "schreibe.png")   enthalten.
Einfach gesagt: Alle Bilder mit den Endungen jpg, gif und png aus dem Text suchen und in den Array stopfen.

Wie geht das?

Danke!
Aqua

PS.: Ist das ein Fall für den |  Oder-Operator?

  1. Hallo.

    Einfach gesagt: Alle Bilder mit den Endungen jpg, gif und png aus dem Text suchen und in den Array stopfen.

    Wie geht das?

    Auf viele verschiedene Arten und Weisen, ich würd's so machen:

    my $foo = "Das ist ein irgendein.jpg  text welchen ich einfach.gif nur so schreibe.png";
    my @bar;
    foreach(split(/\s/,$foo))
     {
      next unless(/.+.(?:jpg|gif|png)$/);
      push(@bar,$_);
     }
    print join(",",@bar);

    Wahrscheinlich nicht die beste Möglichkeit, aber es funktioniert.

    Gruß
    Norbert

  2. Hi!

    Ich würds so machen:

    @array = $foo =~ m/([\S]*.(?:jpg|png|gif))/gi;

    Tschau Maik