Comunidad de diseño web y desarrollo en internet online

Detectar URL en cadena de texto PHP con expresiones regulares

Estuve 2 días tratando de conseguir una expresion regular para que detecte URLs en una variable y luego mostrar ese texto mas el link.. y bueno.. armé esta que función en PHP que funciona de 10…


Código :

<?php
 function toLink($text){
 $text = html_entity_decode($text);
 $text = " ".$text;
 $text = eregi_replace('(((f|ht){1}tp://)[-a-zA-Z0-9@:%_+.~#?&//=]+)',
 '<a href="\1">\1</a>', $text);
 $text = eregi_replace('(((f|ht){1}tps://)[-a-zA-Z0-9@:%_+.~#?&//=]+)',
 '<a href="\1">\1</a>', $text);
 $text = eregi_replace('([[:space:]()[{}])(www.[-a-zA-Z0-9@:%_+.~#?&//=]+)',
 '\1<a href="http://\2">\2</a>', $text);
 $text = eregi_replace('([_.0-9a-z-]+@([0-9a-z][0-9a-z-]+.)+[a-z]{2,3})',
 '<a href="mailto:\1">\1</a>', $text);
 return $text;
 }
 $texto_ejemplo="visiten www.xtremweb.com.ar";
 // este es un texto de prueba$texto_final=toLink($texto_ejemplo);
 //aca llamamos la funcion y hacemos el link para poder
 // mostrarlo echo $texto_final;
 ?>

¿Sabes SQL? ¿No-SQL? Aprende MySQL, PostgreSQL, MongoDB, Redis y más con el Curso Profesional de Bases de Datos que empieza el martes, en vivo.

Publica tu comentario

o puedes...

¿Estás registrado en Cristalab y quieres
publicar tu URL y avatar?

¿No estás registrado aún pero quieres hacerlo antes de publicar tu comentario?

Registrate