preg_match() prüft nur auf ein bestimmtes Muster. preg_replace() und preg_replace_callback() sind vorgesehen zum Erzeugen eines neuen String unter Berücksichtigung und Einbeziehung des Musters.
Es tut mir Leid aber ich bekomme es nicht hin:
Ich habe nun eine kleine Funktion geschrieben:
private function _bitly($t){
$b=new Scripts_bitly('xxx','R_52686084ac7e4ef6d3b8036166a2a70c');
$url=preg_replace('"#(^|[\n ])([\w]+?://.*?[^ \"\n\r\t<]*)#is"',$b->shorten(preg_replace_callback('"#(^|[\n ])([\w]+?://.*?[^ \"\n\r\t<]*)#is"',$t)),$t);
return preg_replace("#(^|[\n ])((www|ftp)\.[\w\-]+\.[\w\-.\~]+(?:/[^ \"\t\n\r<]*)?)#is",$b->shorten(preg_replace_callback('"#(^|[\n ])([\w]+?://.*?[^ \"\n\r\t<]*)#is"',$url)),$url);
}
Lg, Phil