Bonjour tout le monde!

Alors voilà, j'ai fait un petit bbcode perso pour gérer les urls, qui fonctionne très bien jusqu'à maintenant...

Mais voilà, j'essaie de le modifier pour y inclure les ancres, et à ce moment là, ca bug... Je vous détaille les différents essais que j'ai fait...

Ce code ci-après est le code "basique", que j'utilisais jusqu'à maintenant, et qui fonctionne très bien...
Code : Sélectionner tout - Visualiser dans une fenêtre à part
%(\<a href="http://){1}((http://){1}(www.){0,1}([a-z0-9-" target="_blank">{1,})+([.][a-z]{1,3}){1}(/?[a-z0-9_-]*)*([.][a-z0-9]{1,}){0,}((\?|&)?[a-z0-9]*[=]{1}[a-z0-9_-]*)*){0,1}(]{1}([[:print:]]*)(\</a>){1}){1}%i
Ensuite, je me suis dit que l'ancre se placant à la fin, j'ai essayé de modifier le complément d'url, avec les variables, etc... Ce qui a donné ceci, mais là, rien ne change, seul les anciennes url, sans ancre, sont trouvées...
Code : Sélectionner tout - Visualiser dans une fenêtre à part
%(\<a href="http://){1}((http://){1}(www.){0,1}([a-z0-9-" target="_blank">{1,})+([.][a-z]{1,3}){1}(/?[a-z0-9_-]*)*([.][a-z0-9]{1,}){0,}((\?|&|#)?[a-z0-9]*[=]{0,1}[a-z0-9_-]*)*){0,1}(]{1}([[:print:]]*)(\</a>){1}){1}%i
Puis je me suis dit, pourquoi se casser les noi****, pour les compléments, j'autorise tout...
Code : Sélectionner tout - Visualiser dans une fenêtre à part
%(\<a href="http://){1}((http://){1}(www.){0,1}([a-z0-9-" target="_blank">{1,})+([.][a-z]{1,3}){1}(/?[a-z0-9_-]*)*([.][a-z]{1,}){0,}.*)(]{1}([[:print:]]*)(\</a>){1}){1}%i
Mais là, si 2 balises se situent sur la même ligne, il commence à la première, et se finit à la fin de la deuxième, en mettant comme lien tout ce qui se trouve entre-deux... Bref, pas vraiment ce qui est voulu...

J'ai fait également d'autres essais, mais tous très proches de ceux-ci, avec d'infimes modifications, mais les résultats sont identiques...

Auriez-vous donc une suggestion?!

PS: Je suis presque sur que je suis proche du but, mais je butte... Et je suis presque sur également que la solution est toute bête... Mais je ne la trouve pas...