Expression régulière (ereg_replace)

Répondre


Cette question est un moyen d’empêcher des soumissions automatisées de formulaires par des robots.
Smileys
:D :) :( :o :shock: :? 8-) :lol: :x :P :oops: :cry: :evil: :twisted: :roll: :wink: :!: :?: :idea: :arrow: :| :mrgreen: =D> #-o =P~ :^o :non: :priere: 8-|
Voir plus de smileys
  Revue du sujet
 

  Étendre la vue Revue du sujet : Expression régulière (ereg_replace)

par ouckileou » 08 août 2005, 15:05

je n'oublie pas la mention [résolu]

:pouce:

par bzayid » 08 août 2005, 15:02

Ok, merci pour tout ! :D

je n'oublie pas la mention [résolu]

par ouckileou » 08 août 2005, 14:53

regarde dans la doc, ce ne sont pas les mêmes expressions régulières qui sont utilisées dans chacune :

preg_replace : famille PCRE
ereg_replace : famille POSIX
ce sont les PCRE qui sont conseillées car plus rapide

pour toutes ces infos je t'invite à lire les tutos (il y en a un très bon sur ce site) et la doc, car 'cest là que tu auras les meilleurs infos

je vais tester car ce que tu dis m'étonne

édition :
tu as raison, je testais avec preg_match_all :oops:
mais comme il est recommandé d'utiliser preg_.. pas de soucis ;)

par bzayid » 08 août 2005, 14:48

ton code fonctionne avec "preg_replace" et non avec "ereg_replace"

Quelle est la différence ?

Merci en tout cas pour ton aide.

par ouckileou » 08 août 2005, 14:34

bizarre, si je teste ici : http://www.lumadis.be/regex/test_regex.php#pointeur_aff

... il la trouve, tu peux remontrer un bout de code pour comment tu utilises tout ça stp :)

édition :
un poil plus rapide * => +
#\[img\](.+)\[/img\]#

par bzayid » 08 août 2005, 14:28

Merci ce ton aide...

mais il ne trouve pas la chaîne [img]chating.jpg[/img]

par ouckileou » 08 août 2005, 14:03

moi je verrais ça moins compliqué :)
$search_img = '#\[img\](.*)\[/img\]#'; // les parenthèses capturent l'url de l'image
$replace_img = '<img src="../images/$1" alt="\2" />'; // $1 insère l'url de l'image capturée
$contenu_page = ereg_replace($search_img,$replace_img,$contenu_page);

Expression régulière (ereg_replace)

par bzayid » 08 août 2005, 13:53

Bonjour à tous, j'ai un petit problème d'expression régulière...

Je cherche une chaine de type [img]fichier.jpg[/img] pour la remplacer par
le code html pour afficher une image.

Voici mon code:
$search_img = '(\[img\])+([[:alnum:]_\-\./])+(\[/img\])';
$replace_img = '<img src="../images/\2" alt="\2" />';
$contenu_page = ereg_replace($search_img,$replace_img,$contenu_page);
Jai également essayé ceci:
$search_img = '(\[img\])+([:alnum:])+(\.)+(jpg|gif)+(\[/img\])';
$replace_img = '<img src="../images/\2" alt="\2" />';
$contenu_page = ereg_replace($search_img,$replace_img,$contenu_page);
Sans succès :cry:

Merci de votre aide