Expressions régulières : galère galère !
Résolu
juanou
-
vlmath Messages postés 833 Statut Contributeur -
vlmath Messages postés 833 Statut Contributeur -
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...
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...
A voir également:
- Expressions régulières : galère galère !
- Expressions régulières "ne contient pas ..." ✓ - Forum Programmation
- Expressions francaises - Forum Études / Formation High-Tech
- Kyocera Ecosys P3060dn, traces régulières - Forum Imprimante
- Expressions visage bitmoji ✓ - Forum Snapchat
- Que veulent dire les expressions lol et mdr ? ✓ - Forum Loisirs / Divertissements
3 réponses
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
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
Salut,
Pour l'expression régulière, tu peux mettre ça :
Ou sans le \, je n'ai pas testé, c'est à voir ...
Pour le javascript, j'ai trouvé quelque chose ... :
Pas testé ...
Source du code javascript.
@Bientôt
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
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 ?
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 ?
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
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