Mailinglisten-Archive |
/**
* replace URIs with appropriate HTML code to be clickable.
*/
function replace_uri($str) {
$pattern = '#(^|[^\"=]{1})(http://|ftp://|mailto:|news:)([^\s<>]+)([\s\n<>]|$)#sm';
return preg_replace($pattern,"\\1<a href=\"\\2\\3\"><u>\\2\\3</u></a>\\4",$str);
}
Das ist toll, aber einige Fragen bleiben offen:
1) das wird nicht richtig verarbeitet:
... ausgehenden http://Mittelalter.de. Nur ein Beispiel ...
... ausgehenden <a
href="http://Mittelalter.de."><u>http://Mittelalter.de.
</u></a>Nur ein Beispiel ...
2) wenn http:// fehlt, kann ich vielleicht nach www. suchen. Ich
kann das nur mit
function add_http($str) {
if (!sp($str, 'www.')) return $str;
if (sp($str, '//www.')) return $str;
return str_replace('www.', 'http://www.', $str);
}
das geht sicher eleganter.
3) wenn aber mailto: fehlt, stehe ich ganz auf dem Schlauch und
muß wirklich dreckigen Code schreiben oder mir regex reinziehen,
was natürlich auch nicht schlecht ist, wenn man Zeit hat.
Kann das jemand aus dem Stand erledigen?
--
Herzlich
Werner Stuerenburg
_________________________________________________
ISIS Verlag, Teut 3, D-32683 Barntrup-Alverdissen
Tel 0(049) 5224-997 407 · Fax 0(049) 5224-997 409
http://pferdezeitung.de
php::bar PHP Wiki - Listenarchive