henry: perl suche in string

Hallo

ich durchsuche einen String nach Zeichenketten die in " eingeschlossen sind. Dies tauchen aber mehrfach auf und sollen in ein array geschrieben werden.

z.B.

"Hans""OTTO" k.sndkalsdn "FRANZ" lkhjlkhj "KARL""FRITZ" mit "$ergebnis =~ /\"(.+?)\"/,$mystring};"

bekomme ich ein Ergebnis, aber auch nur eins. Wie kann ich alle Ergebnisse in ein Array schreiben.

gruß

henry

akzeptierte Antworten

  1. Hallo henry,

    "Hans""OTTO" k.sndkalsdn "FRANZ" lkhjlkhj "KARL""FRITZ" mit "$ergebnis =~ /\"(.+?)\"/,$mystring};"

    bekomme ich ein Ergebnis, aber auch nur eins. Wie kann ich alle Ergebnisse in ein Array schreiben.

    Du kannst mit einer einfachen Zuweisung die Matches aus den Sub-Patterns bekommen:

    @matches = 'abc "def" ghi "jkl"' =~ /\"([^"]+)\"/g;
    print join(' ', @matches), "\n";
    

    Gibt def jkl.

    LG,
    CK

    1. Danke,

      so einfach wäres es gewesen ;-)

      Gruß