Hallo Leute
Ich steh gerade auf dem Schlauch und kann ein recht simples Problem nicht lösen:
Ich habe einen String in dem ein bestimmtes Muster mehrfach vorkommt. Nun will ich in einer Schleife alle diese Textstellen finden und auswerten. Nur fällt mir partout nicht ein, wie das geht.
Beispiel:
$html = "[a](a.html)[b](b.html)[c](c.html)" ;
$html =~ /[/ ;$link = $1 ;]((.+?))
für den ersten Link klappt das ja ganz gut - nur ich hätte jetzt gerne eine Schleife, in der ich alle Treffer abarbeiten kann. Wenn jemand bitte kurz Zeit hat und mir den relevanten Codeschnipsel posten könnte, wäre ich sehr dankbar.
lg
Erwin
Hallo,
für den ersten Link klappt das ja ganz gut - nur ich hätte
jetzt gerne eine Schleife, in der ich alle Treffer abarbeiten
kann. Wenn jemand bitte kurz Zeit hat und mir den relevanten
Codeschnipsel posten könnte, wäre ich sehr dankbar.
my $tmp = $html;
while ($tmp =~ s#[##){ print $1, "\n";}]((.+?))
HTH,
Moritz
Hallo Erwin,
für den ersten Link klappt das ja ganz gut - nur ich hätte
jetzt gerne eine Schleife, in der ich alle Treffer abarbeiten
kann. Wenn jemand bitte kurz Zeit hat und mir den relevanten
Codeschnipsel posten könnte, wäre ich sehr dankbar.
Da brauchst Du keine Schleife, siehe:
my $html = q'[a](a.html)[b](b.html)[c](c.html)';
my @links = $html =~ /a\s+href="(.+?)"/ig;
Später geht dann z.B.:
print join "\n", @links;
Grüße
CMБ
herzlichen Dank euch beiden
Hi
wusst ich doch, dass es ganz einfach geht. danke euch beiden für die mühe bei einem derartigen primitivproblem. das gibt je ein sternchen…
lg
erwin