Ver Mensaje Individual
  #1 (permalink)  
Antiguo 01/12/2008, 05:20
JBRS
Usuario no validado
 
Fecha de Ingreso: marzo-2004
Mensajes: 349
Antigüedad: 20 años, 1 mes
Puntos: 0
Ereg replace en URLS, no funciona con todas

Hola, uso esta función:

// match protocol://address/path/
$subtitulo = ereg_replace("[a-zA-Z]+://([.]?[a-zA-Z0-9_/-])*", "<a
href=\"\\0\"><span id=\"ad\">\\0</a></span>", $subtitulo);

// match www.something
$subtitulo = ereg_replace("(^| )(www([.]?[a-zA-Z0-9_/-])*)", "\\1<a
href=\"http://\\2\"><span id=\"ad\">\\2</a></span>", $subtitulo);


Para cambiar las urls por hiperenlaces (es decir, cuando se escribe http:/www.algo pone automáticamente el <a href...>).

El tema es que cuando la url es del tipo http://web.php?sec=12&cod=12 se deja el interrogante fuera. ¿No se puede hacer que vaya desde http al siguiente espacio por ejemplo?