Nachdem ich nach 30 Minuten googeln nichts Vernünftiges fand, habe ich mich mal wieder lernend mit Php beschäftigt und diese kleine Funktion gebaut:
function hs_mailreplace($str) {
return preg_replace_callback ('^[_a-z0-9-]+(\.[_a-z0-9-]+)*@[a-z0-9-]+(\.[a-z0-9-]+)*(\.[a-z]{2,3})^',
create_function (
'$str',
'for ($i = 0; $i < strlen($str[0]); $i++) {
$result .= "&#" . ord(substr($str[0], $i, 1)) . ";";
};
return $result;'
),
$str);
}
Wie man sieht, sucht die Funktion in einem String nach E-Mail-Adressen und ersetzt deren Zeichen durch ihre ASCII-Entsprechungen.