Foros del Web » Programando para Internet » PHP »

Problema con expresión regular

Estas en el tema de Problema con expresión regular en el foro de PHP en Foros del Web. Hola mi gente!! tengo esta expresion regular, que actualmente detecta alguna url y la convierte en link! dentro de una cadena de texto! pero necesito ...
  #1 (permalink)  
Antiguo 30/05/2016, 10:24
 
Fecha de Ingreso: septiembre-2011
Mensajes: 480
Antigüedad: 13 años, 2 meses
Puntos: 18
Problema con expresión regular

Hola mi gente!!

tengo esta expresion regular, que actualmente detecta alguna url y la convierte en link! dentro de una cadena de texto! pero necesito saber como la modifico para que a parte de convertir en link las url, el texto normal que no convierte en link. Tambien lo convierta en link pero a una direccion especifica.
Es para los tags de mi web. Para que al hacer click si es un link externo, vaya a otra pagina. Si es un texto normal pues sea convertido en link interno de la pagina.
Gracias.

Aca el codigo.

Código PHP:
    function replace_urls($string){
    
$host "([a-z\d][-a-z\d]*[a-z\d]\.)+[a-z][-a-z\d]*[a-z]";
    
$port "(:\d{1,})?";
    
$path "(\/[^?<>\#\"\s]+)?";
    
$query "(\?[^<>\#\"\s]+)?";
    return 
preg_replace("#((ht|f)tps?:\/\/{$host}{$port}{$path}{$query})#i""<a target='_blank' href='$1'>$1</a>"$string);

__________________
Para el logro del triunfo siempre ha sido indispensable pasar por la senda de los sacrificios. Simon Bolivar

Etiquetas: regular
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 21:40.