Expression régulière avec un flitre?
Posté : 09 nov. 2012, 18:00
Bonjour à tous,
Voilà je bloque sur une expression régulière.
Je voudrais rendre cliquable liens liens d'un texte (ex; passer de http://www.google.fr à < a href="http://www.google.fr">http://www.google.fr</a > )
sauf quand il s'agit d'un image, que j'aimerais pouvoir afficher directement (donc passer de http ://www.leserveur.com/image1.jpg à <i mg src="http ://www.leserveur.com/image1.jpg" />
Je suis près du but mais je ne trouve pas comment écrire l'expression régulière qui va exclure les liens dont les extensions sont des images (c'est la partie [^(png|jpg|gif)] qui me pose problème , je ne sais pas comment l'écrire ni ou la placer:
Merci par avance pour le coup de main!
Voilà je bloque sur une expression régulière.
Je voudrais rendre cliquable liens liens d'un texte (ex; passer de http://www.google.fr à < a href="http://www.google.fr">http://www.google.fr</a > )
sauf quand il s'agit d'un image, que j'aimerais pouvoir afficher directement (donc passer de http ://www.leserveur.com/image1.jpg à <i mg src="http ://www.leserveur.com/image1.jpg" />
Je suis près du but mais je ne trouve pas comment écrire l'expression régulière qui va exclure les liens dont les extensions sont des images (c'est la partie [^(png|jpg|gif)] qui me pose problème , je ne sais pas comment l'écrire ni ou la placer:
Code : Tout sélectionner
$text= preg_replace_callback('#((https?://)[-a-zA-Z0-9@:%_,\+.~\#\€\[\]\{\}\;?&//=][^(png|jpg|gif)])#',
create_function('$matches', 'return \'<a href=".$matches[1]. \'" target="_blank">\'.$matches[1). \'</a>\';'), $text);