2009-02-07 6 views
1

Comment une expression régulière pourrait-elle rendre le texte commençant par http ou www cliquable?Regex http/www aux liens

Mon bbcode actuelle:

 
function bbcode($text) { 
$text = htmlspecialchars($text); 
$text = nl2br($text); 

$find = array(
       "'\[b\](.*?)\[/b\]'is", 
       "'\[i\](.*?)\[/i\]'i", 
       "'\[url\](.*?)\[/url\]'i" 
      ); 

$replace = array(
       "\\1", 
       "\\1", 
       "\\1" 
       ); 

$text = preg_replace($find, $replace, $text); 

return $text; 
} 

Comme vous pouvez le voir, j'utiliser le lien [url] [/ url] pour les liaisons ATM.

Merci d'avance.

P.S. le code html en remplacement de tableau affiche ... wont

Répondre

4

Voici une manière simple et agréable:

Find: (http://[^ ]+) 
Replace: <a href="\\1">\\1</a> 

Find: (www\.[a-zA-Z0-9\-]\.[^ ]+) 
Replace: <a href="\\1">\\1</a> 
Questions connexes