Posez votre question Signaler

Expressions régulières : galère galère ! [Résolu]

juanou - Dernière réponse le 7 févr. 2008 à 21:45
Salutla compagnie.
Et salut mes sauveurs, en particulier !
Ca fait des heures que je me casse la tête avec les "expressions régulières" à essayer de vérifier qu'un champ texte de mon formulaire ne contient que les caractères :
abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ_-.0123456789
Je voudrais faire cette vérification :
* d'abord en javascript, dans la page du formulaire, au moment où je le soumets (par ce que c'est assez immédiat comme procédure)
* puis en php, dans page de traitement du formulaire (pour les énervants personnages qui désactivent le javascript)
Voici grosso modo ce que je comptais faire en php :
if ( ereg("[expression regulière]", $login) ) { cestcool(); }
else { cestpascool(); }
Je sais pas si ereg() fonctionne aussi en javascript...
A votre bon coeur Messieurs-Dames, pour un webmestre à la dérive...
Lire la suite 

Expressions régulières : galère galère »

4 réponses
Réponse
+1
moins plus
Mais c'est bien normal ... Quand on peut aider ..

Pour dire que c'est résolu, tu dois monter tout en haut, t'as une case avec un bouton radio ...
Et Hop, c'est marqué comme résolu
Ajouter un commentaire
Réponse
+0
moins plus
Salut,

Pour l'expression régulière, tu peux mettre ça :

^[a-zA-Z0-9_\-.]{1,}$

Ou sans le \, je n'ai pas testé, c'est à voir ...

Pour le javascript, j'ai trouvé quelque chose ... :
var MonReg = /[0-9]{3}-[0-9]{3}-[0-9]{2}.[0-9]{2}/;

with(document){
writeln(MonReg.test("123-456-78.90"));// true
writeln(MonReg.test("4567-76-322.1"));// false
}

Pas testé ...

Source du code javascript.

@Bientôt
juanou - 7 févr. 2008 à 19:52
Merci vlmath

Pour le php, ça marche impec.
La solution pour le tiret, c'était de le mettre juste après le crochet ouvrant. (Je sais plus où j'ai lu ça.)

ça nous donne :

^[-a-zA-Z0-9_.]{1,}$

Ah, comme c'est beau ! On dirait Verlaine.


Pour le javascript, je me suis pas encore penché dessus. Je crois que j'en ai assez pour aujourd'hui.

Merci en tout cas. Grace à toi je vais pouvoir trouver le sommeil ce soir.
Ciao.


ps : comment on fait pour dire que le sujet est résolu ?
Ajouter un commentaire
Réponse
+0
moins plus
Ca y est, j'ai tout.
Pour ceux qui galèreront après moi, voilà comment je m'en suis sorti :



la fonction javascript :

function Verif()
{
var reg_login = /^[-a-zA-Z0-9_.]{1,}$/;
if (!(reg_login.test(document.forms['formu'].elements['login'].value)))
{
alert("Le login ne doit comporter que des lettres de l'alphabet non accentuées et des chiffres");
return false;
}
}

( à insérer comme ça dans le formulaire : <form action="action.php" name="formu" onSubmit="return Verif(this.form);"> )


et la vérification php :

if (ereg("^[-a-zA-Z0-9_.]{1,}$", $login)) { cestcool()'; }



Encore merci, vlmath
Ajouter un commentaire
Ce document intitulé « expressions régulières : galère galère ! » issu de CommentCaMarche (www.commentcamarche.net) est mis à disposition sous les termes de la licence Creative Commons. Vous pouvez copier, modifier des copies de cette page, dans les conditions fixées par la licence, tant que cette note apparaît clairement.
Dossier à la une
Windows 8 - À quoi s'attendre ?