Puf! Busca un poco sobre expresiones regulares para encontrar enlaces. 
 
Yo tengo por ejemplo esto (que puede optimizarse pero aún no me puse a buscar como):    
Código PHP:
Ver original- function reconocer_links($texto) 
- { 
-     // TODO: acortar el texto de enlace. Que no pase de la primera barra / 
-     $nuevo_texto = ' ' . $texto;  
-     $nuevo_texto = preg_replace("#([\t\r\n ])([a-z0-9]+?){1}://([\w\-]+\.([\w\-]+\.)*[\w]+(:[0-9]+)?(/[^ \"\n\r\t<]*)?)#i", '\1<a href="\2://\3" target="_blank">\2://\3</a>', $nuevo_texto);  
-     $nuevo_texto = preg_replace("#([\t\r\n ])(www|ftp)\.(([\w\-]+\.)*[\w]+(:[0-9]+)?(/[^ \"\n\r\t<]*)?)#i", '\1<a href="http://\2.\3" target="_blank">\2.\3</a>', $nuevo_texto);  
-     $nuevo_texto = preg_replace("#([\n ])([a-z0-9\-_.]+?)@([\w\-]+\.([\w\-\.]+\.)*[\w]+)#i", "\\1<a href=\"mailto:\\2@\\3\">\\2@\\3</a>", $nuevo_texto);  
-     $nuevo_texto = substr($nuevo_texto, 1);  
-   
-     return $nuevo_texto;  
- } 
La funcion reemplaza links. Pero quizas las mismas expresiones regulares te sirvan para tu script.