Trouver une URL dans un texte / Rendre une URL cliquable
Bonjour les gens !
Alors voilà, je me lance dans les regex. Sauf que là, j'ai un problème. Je souhaite faire une recherche dans un texte qui serait écrit sur le tagboard de mon site. Ca fait maintenant plusieurs heures que je parcours la toile avec mon grand ami google, mais il n'a pu me trouver que des sources pas très intéressante pour moi (en gros, elles fonctionnent pas dans tous les cas que j'ai pu trouver). Malgrès tout, il m'a trouvé un site très intéressant qui m'a appris les regex (http://www.expreg.com). Je vous le recommande au passage.
Bref, ce que je cherche, c'est une personne qui pourrait me dire ce qui ne va pas dans ma regex. Ne dit-on pas qu'un oeil neuf peut trouver les erreurs qui sont sous le nez des programmeurs ? Bref, la voici :
Code:
1 2 3 4 5 6 7 8
| $expreg = "`"; // Début de ligne
$expreg .= "((http|news|ftp|https|irc)://)?"; // Le protocole et les "://", présent ou non
$expreg .= "(www\.)?"; // Les 3 W, présent ou non
$expreg .= "([a-zA-Z0-9]\.)+"; // Le domaine ou sous-domaine, alphanum, présent au moins une fois
$expreg .= "[a-zA-Z]{2,4}"; // l'extention, mini 2 et maxi 3 caractères
$expreg .= "(/[a-zA-Z0-9])*"; // les dossiers, sous dossier ou nom de fichier, alphanum, absent ou plusieurs
$expreg .= "(\.[a-zA-Z0-9]{2,4})?"; // l'extention de fichier, alphanum, présent ou non
$expreg .= "`"; // Fin de ligne |
Je la veux utile dans absolument tous les cas, comme c'est ma première, je l'ai complétement détaillée. Le soucis, c'est que j'ai aucune erreur. La seule chose qui ne va pas, c'est que le texte testé n'est pas réaffiché...
Dernière info, j'utilise une commande PCRE, la voici :
Code:
$message = preg_replace($expreg, "¤URL¤", $message_a_tester);
Voilà, j'espère que quelqu'un pourra me dire ce que j'ai pas vu et sourtout me l'expliquer que je ne reste pas idiote :D Merci d'avance !