Regex et caractères spéciaux

totofweb Messages postés 57 Date d'inscription mercredi 18 septembre 2002 Statut Membre Dernière intervention 19 juin 2006 - 15 juin 2003 à 23:23
sidouo Messages postés 15 Date d'inscription mercredi 11 juin 2008 Statut Membre Dernière intervention 31 mars 2010 - 10 août 2008 à 00:04
Bonjour

J'ai une variable, $texte. Dans celle-ci, je dois tester si elle contient [couleur=#123456] où 123465 est un nombre entier de 6 chiffres.

J'ai essayé : ereg("^([couleur=#)?+[[:digit:]]{6}+(])?+$", $texte), mais ceci ne marche pas.

Pouvez-vous m'éclairer ?

Merci
Totof :)
[mailto: totofwebcreation@hotmail.com]

6 réponses

totofweb Messages postés 57 Date d'inscription mercredi 18 septembre 2002 Statut Membre Dernière intervention 19 juin 2006
15 juin 2003 à 23:29
Je complique encore un peu le problème : il faut que je récupère la valeur digitale à 6 chiffres (123456 dans l'exemple)

Salut
Totof :)
[mailto: totofwebcreation@hotmail.com]
0
revinc Messages postés 385 Date d'inscription mardi 15 octobre 2002 Statut Membre Dernière intervention 19 décembre 2017
16 juin 2003 à 10:37
essaye

ereg("^\[couleur=#([0-9a-f]{6})\]$",$text, $sortie);

la couleur est dans $sortie[1] (théoriquement...)

p.s. : le code couleur est en hexa (0-9a-f) pas seulement sur six chiffres...

++

Re|V|inc
0
totofweb Messages postés 57 Date d'inscription mercredi 18 septembre 2002 Statut Membre Dernière intervention 19 juin 2006
16 juin 2003 à 13:28
Salut
J'ai réussi en faisant "\[couleur=#([0-9a-fA-F]{6})\]"

Mais voilà maintenant mon problème : je voudrais remplacer cette chaine par ">.

Je fais donc :
if (ereg("\[couleur=#([0-9a-fA-F]{6})\]", $texte, $sortie) == true)
{
$texte = ereg_replace("\[couleur=#([0-9a-fA-F]{6})\]", " essaye
>
> ereg("^\[couleur=#([0-9a-f]{6})\]$",$text, $sortie);
>
> la couleur est dans $sortie[1] (théoriquement...)
>
> p.s. : le code couleur est en hexa (0-9a-f) pas seulement sur six chiffres...
>
> ++
>
> Re|V|inc
>
>
> -------------------------------
> Réponse au message :
> -------------------------------
>
> > Je complique encore un peu le problème : il faut que je récupère la valeur digitale à 6 chiffres (123456 dans l'exemple)
> >
> > Salut
> > Totof :)
> > [mailto: totofwebcreation@hotmail.com]
> >
> >
> > -------------------------------
> > Réponse au message :
> > -------------------------------
> >
> > > Bonjour
> > >
> > > J'ai une variable, $texte. Dans celle-ci, je dois tester si elle contient [couleur=#123456] où 123465 est un nombre entier de 6 chiffres.
> > >
> > > J'ai essayé : ereg("^([couleur=#)?+[[:digit:]]{6}+(])?+$", $texte), mais ceci ne marche pas.
> > >
> > > Pouvez-vous m'éclairer ?
> > >
> > > Merci
> > > Totof :)
> > > [mailto: totofwebcreation@hotmail.com]
> >
>
0
revinc Messages postés 385 Date d'inscription mardi 15 octobre 2002 Statut Membre Dernière intervention 19 décembre 2017
16 juin 2003 à 13:49
bah essaye simplement

ereg_replace("\[couleur=#([0-9a-f]{6})\]",$text, "");

je ne suis pas sur que ça marche, je n'ai pas php sous les yeux mais c un truc dans le genre

++

Re|V|inc
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
totofweb Messages postés 57 Date d'inscription mercredi 18 septembre 2002 Statut Membre Dernière intervention 19 juin 2006
16 juin 2003 à 16:03
IMPEC :approve) !!!

Merci revinc

Salut
Totof :)
[mailto: totofwebcreation@hotmail.com]
0
sidouo Messages postés 15 Date d'inscription mercredi 11 juin 2008 Statut Membre Dernière intervention 31 mars 2010
10 août 2008 à 00:04
salut tout le monde donc j'ai un problem

j'ai creer un formulaire d'inscription

alors dans le pseudou je veux autoreser que les lettres les chifres et -,_ et le point . donc voila ce que j'ai fais mais ca marche
pas 

function verifpseudou($variable)
         {
           $syntaxe="#([0-9A-Za-z])#";
           return ((ereg($syntaxe,$variable))?true:false);
         }

quelqu'un a une repense.??!!
0
Rejoignez-nous