Volker: Funktion in einem regulären Ausdruck

Beitrag lesen

Hallo zusammen,

ich möchte per PHP in einem Text $text alle E-Mails suchen und als HTML-Code linken, so weit:
$text = preg_replace ("!([_a-zäöüéèàA-ZÄÖÜÉÈÀ0-9-]+(.[_a-zäöüéèàA-ZÄÖÜÉÈÀ0-9-]+)*@([a-zäöüéèàA-ZÄÖÜÉÈÀ0-9-]+.)+([a-zA-Z]{2,3}))!", "<a href="mailto:\1">\1</a>", $text);

Jetzt möchte ich zusätzlich die gefundene E-Mail einer Funktion convertEmail($email) übergeben, die alle @ und . in der E-Mail in [at] und [dot] verwandelt. Die Funktion als solche habe ich, aber wie rufe ich sie innerhalb des regulären Ausdrucks auf?

(Falsche) Verdeutlichung:
$text = preg_replace ("!([_a-zäöüéèàA-ZÄÖÜÉÈÀ0-9-]+(.[_a-zäöüéèàA-ZÄÖÜÉÈÀ0-9-]+)*@([a-zäöüéèàA-ZÄÖÜÉÈÀ0-9-]+.)+([a-zA-Z]{2,3}))!", "<a href="mailto:***convertEmail(??)***">***convertEmail(??)***</a>", $text);

Die regulären Ausrücke verwirren mich zugegeben etwas; wie formuliere ich den Funktionsaufruf richtig?
Danke für Hilfe.

Gruß, Volker