Flux rss
Rechercher : dans
Par : Mots clés Nom d'utilisateur
Messages sans réponse

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

juanou, le jeudi 7 février 2008 à 19:28:03 
 Signaler ce message aux modérateurs

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...

Configuration: Windows XP
Firefox 2.0.0.11

1

vlmath, le jeudi 7 février 2008 à 19:39:12

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

Répondre à vlmath

2

juanou, le jeudi 7 février 2008 à 19:52:39

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 ?

Répondre à juanou

3

juanou, le jeudi 7 février 2008 à 20:13:55

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

Répondre à juanou

4

 vlmath, le jeudi 7 février 2008 à 21:45:05
  • +1

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

Répondre à vlmath
Expression régulière d'une adresse MAC (Résolu) Bonjour, Je suis en galère pour faire l'expression régulière d'une adresse MAC. En fait, je suis en train de faire un script bash contenant une commande sed qui, elle même, contient une expression régulière d'adresse MAC pour remplacer une @Mac... www.commentcamarche.net/forum/affich-5667922-expression-reguliere-d-une-adresse-mac
PHP - Expressions régulières Qu'est-ce qu'une expression régulière? Les expressions régulières sont des modèles créés à l'aide de caractères ASCII permettant de manipuler des chaînes de caractères, c'est-à-dire permettant de trouver les portions de la chaîne correspondant au... www.commentcamarche.net/contents/php/phpreg.php3
[PHP]Expression régulière & condition if (Résolu) Bonjour, J'ai un petit souci pour réaliser mon back-office. J'ai deux pages pour mettre à jour mes dates. La première page contient le tableau avec les champs pré-remplis. Tout fonctionne, mais quand j'ai voulu mettre une expression régulière, celle... www.commentcamarche.net/forum/affich-3211608-php-expression-reguliere-condition-if
[RegExp] Récupérer une adresse IPFinalité Mise en œuvre Explications Interprétation du motif Récupérer une adresse IP Finalité Pour récupérer une IP dans un fichier texte, fichiers journaux, pages web, etc. Mise en œuvre L'expression régulière suivante combinée à la... www.commentcamarche.net/faq/sujet-911-regexp-recuperer-une-adresse-ip
[Commande] “grep” récursifLorsque l'option -r (ou -d recurse) de la commande grep n'est pas disponible, comme sous HP-UX, il faut l'utiliser conjointement avec la commande find. Par exemple, pour chercher récursivement la chaîne «CCM» dans tous les fichiers réguliers à partir... www.commentcamarche.net/faq/sujet-227-commande-grep-recursif
Sed - Trucs et astucesSubstitution Affichage Suppression Espace et tabulation Ligne vide Intervalle régulier Divers Joindre des lignes Affichage insensible à la casse Substitution Substituer "foo" par "bar" à chaque ligne Seulement la 1ère... www.commentcamarche.net/faq/sujet-6699-sed-trucs-et-astuces
Expression régulière avec grep (Résolu)Bonjour, je cherche désespérément l'expression régulière qui me permettrait de trouver des mots, mais en ôtant certains contextes. Je m'explique : grep -c -E "failed|unexpectedly exited" me sort le nombre de fois où j'ai 'failed' ou 'unexpectedly... www.commentcamarche.net/forum/affich-2189615-expression-reguliere-avec-grep
[Expression régulière]Chaine de 9 chiffres (Résolu)Bonjour Voila je suis une bille en expression régulière et j'aimerais bien un peu d'aide ;p Je voudrais vérifier qu'une chaine n'est composée que de 9 chiffres ni plus ni moins. Exemple : 123456789 Est que quelqu'un aurait une idée de comment faire ?... www.commentcamarche.net/forum/affich-3172818-expression-reguliere-chaine-de-9-chiffres
[Java] split d'un String/expression reguliere (Résolu)Bonjour a tous :), Voila je vous expose mon probleme : je cherche a decouper un String (en Java) d'une certaine maniere seulement je n'ai pas reussi a trouver une l'expression reguliere correspondante. Un petit exemple sera plus parlant : Je veux... www.commentcamarche.net/forum/affich-6602938-java-split-d-un-string-expression-reguliere
Les Galeries Lafayette s'ouvrent aux internautes(Paris - Relax news) - Les internautes peuvent désormais acheter des articles vendus dans les magasins Galeries Lafayette en se connectant à la plateforme électronique de l'enseigne. Après avoir choisi parmi près de 100 marques et 2.500 références,... www.commentcamarche.net/actualites/les-galeries-lafayette-s-ouvrent-aux-internautes-5847588-actualite.php3
Javascript - L'objet RegExpLes particularités de l'objet RegExp L'objet RegExp est un objet permettant de manipuler des expressions régulières, c'est-à-dire des modèles créés à l'aide de caractères ASCII permettant de manipuler des chaînes de caractères, afin de trouver des... www.commentcamarche.net/contents/javascript/jsregexp.php3
Tableur - Les expressions conditionnellesQu'est-ce qu'une structure conditionnelle? On appelle structure conditionnelle les instructions qui permettent de tester si une condition est vraie ou non. Les structures conditionnelles peuvent être associées entre elles. Pour pouvoir mener à bien... www.commentcamarche.net/contents/tableur/tabcond.php3
Tableur - Les expressions arithmétiquesPrésentation Les expressions arithmétiques sont des expressions simples construites avec des opérateurs arithmétiques et des constantes ou des références à des cellules. On appelle opérandes les valeurs sur lesquelles l'opérateur agit. On distingue... www.commentcamarche.net/contents/tableur/tabarithm.php3