Hallo Jörk,
Ich hätte da folgendes Anzubieten:
while($_ =~ /<[^>]+?\s+)(?:alttitle)="(.*?)"[^>]*>/igo) { $stringa .= "$1 " if($1); }Hauptsächlich sollte wohl die letzte Klammer bei Dir der Übeltäter sein. Der verwendete * ist ja bekanntlich "greedy" - also äußerst gefräßig! So schnappt er sich also erstmal den Gesamten Text und gibt ihn dann Zeichen für Zeichen wieder frei, bis eine Stelle gefunden ist, an der ein > folgt ...
Probier es doch einfach mal aus. Schnellschuß bei Dir wäre dann ein ? einzubauen (?:.*?>>)
erstmal Danke für Deine Antwort, das scheint's aber noch nicht zu sein :(
Dabei bekomme ich die Fehlermeldung
"unmatched () in regexp at test.pl line xxx - ein Prozeß hat versucht, zu einer
nicht bestehenden Pipe zu schreiben."
Werde es trotzdem noch weiter probieren (und nachlesen, nachlesen ....)
Vielen Dank + Grüße Günter