test de chaines de caracteres

Répondre
crs-dante
le 27/04/2004 à 21:48
crs-dante
vola j ai bien lu le cours des test de chaines mais je capte pas ...

j essaye de ne permettre uniquement un mot composé de chiffre et comportant entre 4 et 8 caracteres ..
impossible de réaliser la syntaxe ! si qqun peut m aider ! merci :o
Koboneil
le 27/04/2004 à 22:37
Koboneil
Je suis l'homme de la situation smiley

D'apres ce que j'ai compris, tu veux une chaine de caractère composé, uniquement de chiffres, et seulement entre 4 et 8 caractère ?

Alors le pattern que tu as besoin c'est celui ci :
^[0-9]{4,8}$

Explications :

- ^ : début de la chaine

- [0-9] : désigne les chiffres

- {4,8} : indique le nombre de chiffre autorisé, ici entre 4 et 8

- $ : fin de la chaine.

Voilà, bon mes explications ne sont peut etre pas très correctes, mais voilà

smiley
Koboneil
crs-dante
le 27/04/2004 à 23:36
crs-dante
hum ca marche pour le nombre de caracteres, mais si je mets une lettre dans le mot, jai une erreur !!

$test = 8541;

$test_test = eregi( '^[0-9]{4,8}$' ,$test );
if ($test_test) {
echo 'ok';
}
else { echo 'non'; }


voila la ca me met OK, si je mets moins de 3 chiffres et + de 8 ca me met NON, donc ca va mais avec des lettres :

Parse error: parse error, unexpected T_STRING

la ligne désignée est celle ou je délcarer ma var $test
Koboneil
le 27/04/2004 à 23:49
Koboneil
Si tu met des lettre dans ta variable $test, faut pas oublier les quotes un ^^ :

$test = '789dsfdsfsd';

smiley
Koboneil
Répondre

Ecrire un message

Votre message vient d'être créé avec succès.
LoadingChargement en cours