Vielen dank euch allen für die Hilfe, jetzt ist im endeffekt so etwas daraus geworden:
[code lang=perl] if(open($old_feed, "<$options{'feed'}")) {
while(<$old_feed>) {
Filehandles sind keine Skalare, ausserdem ist es usus auch Systemoperationen zu checken.
if( open (FH , "<$options{feed}") ) {
while(<FH>) { ....
} else {
warn "Fehler beim öffnen von $options{feed}: $!";
}
Aber!
wie Skeeve schon sagte, ist es durchaus üblich in Perl, dafür fertige Module von CPAN zu benutzen, gerade zu XML sollten Reihenweise Module verfügbar sein. Zumal so ein Geschichte (das Parsen von XML) schnell ausartet.
$old_items .= $_;
}
my @old_items = ($old_items =~ /<item>.*?</item>/sg);
schon allein das sollte eigentlich nicht funktionieren. Der ausdruck .* sucht alle Zeichen, was jetzt genau das ungierige Fragezeichen da macht weiß ich nicht. Aber um solche Tags zu suchen ist eher so ein Ausdruck üblicher:
my @erg = ($text =~ /<tag[^>]*>([^<]*)/gi);
Aber wie gesagt, Module sind immer erste Wahl.
Struppi.
Javascript ist toll (Perl auch!)