Hi,
ich hab da ein kleines Problem.
while ($text =~ /[link](.+)[/link]/g) {
my $image = "<a href="$1" target="parent">$1</a>";
$text =~ s/[link].+[/link]/$image/;
}
Jetzt ist es aber so, wenn es im Text so aussieht [link]blablabla.html[/link] mehr text mehr text [link]neuerlink.html[/link] , er alles zwischen dem ersten [link] und letzten [/link] als Link sieht. Wie kann ich den regulären Ausdruck so ändern, daß er jeden Link seperat erkennt ?
Du brauchst einen "nichtgefräßigkeits operator" - non-greedy.
und der ist ein Fragezeichen.
/[link](.+?)[/link]/g müsste eigentlich reichen.
http://selfhtml.teamone.de/cgiperl/sprache/regexpr.htm#gierig_genuegsam
bye eddie