hallo,
ich möchte aus einem bestimmten string alle emailadressen automatisch verlinken!
wenn ich es so mache,
$string = eregi_replace("[_a-zA-Z0-9-]+(\.[_a-zA-Z0-9-]+)*@[a-zA-Z0-9-]+\.([a-zA-Z]{2,3})","<a href=\"mailto:\\0\">\\0</a>",$string);
dann funktioniert es zwar (wobei z.B. von der emailadresse "email@adresse.jojo" folglich nur "email@adresse.joj" verlinkt wird, obwohl "email@adresse.jojo" keine gültige email ist und somit nicht verlinkt werden soll), wenn ich es jedoch so mache,
$string = eregi_replace("^[_a-zA-Z0-9-]+(\.[_a-zA-Z0-9-]+)*@[a-zA-Z0-9-]+\.([a-zA-Z]{2,3})$","<a href=\"mailto:\\0\">\\0</a>",$string);
funktioniert es nicht mehr, obwohl ich doch nur mit "^" einen wortbeginn bzw. mit "$" ein wortende gekennzeichnet habe und somit das oben geschilderte problem aus dem weg geräumt habe!
weiss jemand warum?
vielen dank im voraus
mfG
Guido
ich möchte aus einem bestimmten string alle emailadressen automatisch verlinken!
wenn ich es so mache,
$string = eregi_replace("[_a-zA-Z0-9-]+(\.[_a-zA-Z0-9-]+)*@[a-zA-Z0-9-]+\.([a-zA-Z]{2,3})","<a href=\"mailto:\\0\">\\0</a>",$string);
dann funktioniert es zwar (wobei z.B. von der emailadresse "email@adresse.jojo" folglich nur "email@adresse.joj" verlinkt wird, obwohl "email@adresse.jojo" keine gültige email ist und somit nicht verlinkt werden soll), wenn ich es jedoch so mache,
$string = eregi_replace("^[_a-zA-Z0-9-]+(\.[_a-zA-Z0-9-]+)*@[a-zA-Z0-9-]+\.([a-zA-Z]{2,3})$","<a href=\"mailto:\\0\">\\0</a>",$string);
funktioniert es nicht mehr, obwohl ich doch nur mit "^" einen wortbeginn bzw. mit "$" ein wortende gekennzeichnet habe und somit das oben geschilderte problem aus dem weg geräumt habe!
weiss jemand warum?
vielen dank im voraus
mfG
Guido
Kommentar