Uwe: Schalter für RegExpr

Beitrag lesen

Halihallo Uwe

das funktioniert rel. gut. Relativ heißt, sowas:

<a href="b_extranet.html"  onmouseover="document.image3.src='images/a_extranet.gif'" onmouseout="document.image3.src='images/extranet.gif'">

kann der NICHT auflösen!
Ich würde hier erwarten:

Link: b_extranet.html

dann lass mal folgendes laufen:

<code>
use HTML::LinkExtor;

my $test = '<a href="b_extranet.html"  onmouseover="document.image3.src='images/a_extranet.gif'" onmouseout="document.image3.src='images/extranet.gif'">';

$p = HTML::LinkExtor->new(&cb);
sub cb {
   my($tag, %links) = @_;
   while ( my ($n,$v) = each %links ) {
      print 'Link: '.$v."\n";
   }
}
$p->parse($test);
</code>

also bei mir funktionierts ;)
oder was soll daran falsch sein?

Ich habe es ähnlich gemacht:

sub link_resolve
 {
  my $inhalt = shift;
  #$inhalt =~ s/\r/\s/gi;
  #$inhalt =~ s/\n/\s/gi;

my $p = HTML::LinkExtor->new(&callback);

# Set up a callback that collect image links
  my @links = ();
  sub callback {
     my($tag, %attr) = @_;
     push(@links, values %attr);
  }

$p->parse($inhalt);

return @links;
         }

Der Unterschied ist nur, daß ich den gesamten Code in $inhalt habe und die Links als Array @links speicher.
Bei mir löst er das mit LinkExtor nicht auf.
Meine RegExpr. dagegen schaffen es.

Uwe