Optimistation d'expressions regulieres

Résolu
lespleiades Messages postés 25 Date d'inscription lundi 8 mai 2006 Statut Membre Dernière intervention 6 août 2007 - 31 mai 2007 à 17:59
lespleiades Messages postés 25 Date d'inscription lundi 8 mai 2006 Statut Membre Dernière intervention 6 août 2007 - 31 mai 2007 à 22:40
salut tt le monde^^

voila, je me creuse la tete pour optimiser un preg_replace pour un formulaire. je vous montre un exemple:
----------------------------------------------------------------------------------------------------
$pseudo = trim($_POST['login']);
$pseudo1 = preg_replace('/([^.a-z0-9]+)/i', '', $pseudo);

$mdp1 = trim($_POST['mot1']);
$mdp2 = preg_replace('/([^.a-z0-9]+)/i', '', $mdp1);
$mdp3 = trim($_POST['mot2']);
$mdp4 = preg_replace('/([^.a-z0-9]+)/i', '', $mdp3);

$mail1 = trim($_POST['email1']);
$mail = preg_replace('/([^.a-z0-9]+)/i', '', $mail1);
------------------------------------------------------------------------------------------------------

l'ideal serait de créer un fonction qui inclurait une variable aléatoire ($mdp,$mdp1,$mdp3 etc..)
mais  je ne sait pas si c'est possible, en tout cas je voit pas comment.

sinon j'ai essayé pleins de trucs du genre (c'est juste un exemple):

$var1 = '([^.a-z0-9]+)';
$pseudo1 = preg_replace('/$var1."/i', '',".$pseudo);

mais rien a faire ca me renvoi toujours une erreur, du type T_string ou parse error,
alors si quelqu'un a une idée chui preneur^^

4 réponses

coucou747 Messages postés 12303 Date d'inscription mardi 10 février 2004 Statut Membre Dernière intervention 30 juillet 2012 42
31 mai 2007 à 22:19
Salut

nan mais relis toi :

$pseudo1 = preg_replace('/$var1."/i', '',".$pseudo);

evidement, ca fait parse error...
moi je te dis que ca :

$pseudo1 = preg_replace('/'.$var1.'/i', '',$pseudo);

c'est correct... tu pourrais au moins tester...

au passage, c'est pas une optimisation (ca ne fait pas gagner du temps de calcul)

une recherche sur exalead vous aurait peut-etre evite de poser cette question

In a dream, I saw me, drop dead...
U were there, U cried...
It was just a dream,
if I die, U won't cry, maybe, U'll be happy
3
coucou747 Messages postés 12303 Date d'inscription mardi 10 février 2004 Statut Membre Dernière intervention 30 juillet 2012 42
31 mai 2007 à 18:45
Salut

$pseudo1 = preg_replace('/'.$var1.'/i', '',".$pseudo);

cf phpdebutant.org

une recherche sur exalead vous aurait peut-etre evite de poser cette question

In a dream, I saw me, drop dead...
U were there, U cried...
It was just a dream,
if I die, U won't cry, maybe, U'll be happy
0
lespleiades Messages postés 25 Date d'inscription lundi 8 mai 2006 Statut Membre Dernière intervention 6 août 2007
31 mai 2007 à 21:48
salut coucou^^

il me semblait que j'avais dejas essayé, j ai re-essayé et ca veut pas :/
*j ai pas oublié de fermer le form c te fois ci  +_+*
 
mais je viens de me rendre compte que la variable n'est pas definie,
il doit mal *ou trop bien* interpreter les ();
meme si je les replace dans la ligne ca ne veut pas non plus, les caracteres speciaux ont l'air de mettre le boxon. et puis a la fin ca serviras plus a rien.

si t as une autre soluce, sinon j pense pas que ce soit tres utile comme optimisation de toutes facons, si?
0
lespleiades Messages postés 25 Date d'inscription lundi 8 mai 2006 Statut Membre Dernière intervention 6 août 2007
31 mai 2007 à 22:40
T.T merciiiiiiii coucou^^
0