Bonjour à tous,
Je me casse la tête depuis 2 jours sur un truc qui doit surement être tout bête...
Je souhaite dans une chaine extraire toute sous chaine type URL qui n'est pas balisé par du bbcode pour rajouter justement les balises bbcode qui vont bien.
J'utilise ces 2 expressions régulières :
La 1ere fait le remplacement si l'url est trouvée en début de chaine, celle ci fonctionne, pas de problème... Dans la 2nde, j'essaie de trouver le même motif en indiquant que je ne veux pas qu'avant le "http" il y ait de crochet fermant "]"... Mais ça ne fonctionne pas...
Le but final étant que si les utilisateurs oublient de mettre les urls entre les balises bbcode
[/url] que cela les ajoute en auto lors de l'affichage du message enregistrer...
Merci d'avance pour toute idée, je suis à sec...
Modifié par Miky76 (26 Jan 2012 - 21:59)
Je me casse la tête depuis 2 jours sur un truc qui doit surement être tout bête...
Je souhaite dans une chaine extraire toute sous chaine type URL qui n'est pas balisé par du bbcode pour rajouter justement les balises bbcode qui vont bien.
J'utilise ces 2 expressions régulières :
$texte = preg_replace( "`^((http)+(s)? [decu]//)|(www\.))((\w|\.|\-|_)+)(/)?(\S+)?`i", "[url]http\\3://\\5\\6\\8\\9[/url]", $texte);
$texte = preg_replace( "`(([^\]]{1}http)+(s)? [decu]//)|(www\.))((\w|\.|\-|_)+)(/)?(\S+)?`i", "[url]http\\3://\\5\\6\\8\\9[/url]", $texte);
La 1ere fait le remplacement si l'url est trouvée en début de chaine, celle ci fonctionne, pas de problème... Dans la 2nde, j'essaie de trouver le même motif en indiquant que je ne veux pas qu'avant le "http" il y ait de crochet fermant "]"... Mais ça ne fonctionne pas...
Le but final étant que si les utilisateurs oublient de mettre les urls entre les balises bbcode

Merci d'avance pour toute idée, je suis à sec...
Modifié par Miky76 (26 Jan 2012 - 21:59)