Código PHP:
function busca_url($_valor){
$pattern[0] = "#([\n ])([a-z]*)://([^, \n\r]+)#i";
$replacement[0] = "\\1<a href=\"\\2://\\3\" target=\"_blank\">\\2://\\3</a>";
$pattern[1] = "#([\n ])www\.([a-z0-9\-]+)\.([a-z0-9\-.\~]+)((?:/[^, \n\r]*)?)#i";
$replacement[1] = "\\1<a href=\"http://www.\\2.\\3\\4\" target=\"_blank\">www.\\2.\\3\\4</a>";
$pattern[2] = "#([\n ])([a-z0-9\-_.]+?)@([^, \n\r]+)#i";
$replacement[2] = "\\1<a href=\"mailto:\\2@\\3\">\\2@\\3</a>";
$_remplazado = preg_replace($pattern,$replacement,$_valor);
return $_remplazado;
}
funcionaba perfecto me convertia las urls de todas formas como las metieran si le ponian solo www. o http:// o http://www. y hasta correos pero ahora solo funciona parcialmente, porque sera?
Espero que me puedan ayudar