Guten Morgen Forum,
bevor es ins schöne Sommer Wochenende geht hab ich noch eine kleine Frage zu den guten alten regulären Ausdrücken.
Ich möchte aus einem Link der sich in einem String befindet jeweils den Link Text herraus filtern.
(In Beispiel 1 also =>Eukaryota, in Bsp. 2 =>Bacteria)
Es soll aber nur aus den Links die Beschreibung gefiltert werden, bei denen das Alt Attribut ALT="superkingdom" vorkommt.
Das sollte ja nicht so schwer sein, aber es will mir nicht gelingen, ich bekomme durchaus einen Ausdruck hin der mir bei einem der Beispiele den gewünschten Text liefert, aber hab noch keinen hinbekommen der mir etwas bei beiden liefert.
Hier mal mein Ansatz:
$such_string=~m/<A.*ALT="superkingdom".*>([^<]*)</A>/gi;
(Erklärung was ich denke was ich Abfrage mit dem RegExp:
Einen A Tag, gefolgt von beliebigen und beliebig vielen(oder kein) Zeichen dann ein ALT="superkingdom" danach noch mal beliebige Zeichen oder keins bis zum > dann werden alle Zeichen außer das < geklammert und somit gespeichert und dann muß noch mal ein </a> kommen, die ganze Sache ist case insensitive wegen des Flags i)
Beispiel 1: $such_string="...<A HREF="url.de" ALT="superkingdom">Eukaryota</A>..."
oder
Beispiel 2: $such_string="...<a ALT="superkingdom" href="anderer_url.de" TITLE="superkingdom">Bacteria</a>..."
(Die Punkte sollen nur zeigen das die besagte Stelle in einem langen String vorkommen, sind so nicht im String vorhanden ;o) )
Ich hoffe einer von euhc kann mir dabei helfen, dann kann ich mich auch mental vom Computer lösen und werde ein schönes Wochenende genießen.
Gruß
Localhorst