Bonjour à tous,
J'aurais besoin de connaitre l'expression régulière suivante :
J'autorise la saisie de tous les caractères sauf : ,;.²&é"'(-è_çà)=
Apparament [^,;.²&é"'(-è_çà)=]* ne fonctionne pas.
Merci pour votre aide.
Bonjour à tous,
J'aurais besoin de connaitre l'expression régulière suivante :
J'autorise la saisie de tous les caractères sauf : ,;.²&é"'(-è_çà)=
Apparament [^,;.²&é"'(-è_çà)=]* ne fonctionne pas.
Merci pour votre aide.
essaie de placer le - en fin d'expression, avant de refermer la plage;
Ca ne marche pas mieux.
Même plus simplement :
Si je dis :
- j'autorise la saisie de tous les caractères sauf A avec [^A]*
Et bien, il faisse passer Aa, abA, aAb...
En revanche, si je dis :
- j'autorise la saisie de tout sauf le caractère A avec [^A], tout est OK.
Pour info, voilà le code :
Bizarre
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3 exp= /[^A]*/g; alert(exp.test(chaine));![]()
Début (^) et fin ($) de la chaine.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3 exp= /^[^A]*$/; alert(exp.test(chaine));
Dans ton test, tu cherchais si il existait un sous-chaine de ta chaine ayant au moins 0 (sic) caractères n'étant pas A...
Autre info, les parenthèses ( et ) sont des caractères spéciaux, qu'il faut donc echapper. (avec \)
idem pour - et pour . (au moins)
oui mais dans son premier masque Goldorak2 travaillait dans une plage [], d'où le sens exclusif de ^ et les échappements facultatifs;
OK, merci, le tout sauf A fonctionne parfaitement.
Par contre, j'ai essayé de la même façon d'appliquer le tout sauf : ,;.²&é"'(-è_çà)= avec ceci :
^[^,;.²&é"'(-è_çà)=]*$
Et là, il me refuse tout. Par exemple, les chaines ABN, zzz sont refusées.
je te l'ai pourtant dit:
Code : Sélectionner tout - Visualiser dans une fenêtre à part exp=/^[^,;.²&é"'(è_çà)=-]*$/;
OK, et pourquoi le "-" en fin d'expression ? Pke il s'agit d'un caractère spécial ?Envoyé par javatwister
Car en milieu de chaine avec un "\" devant, ça fonctionne.
parce que "x-y" définit une plage de caractères (unicode) comprise entre x et y;
bref, entre ( (40) et è (232), tu as tous les caractères alphanumériques... et ton expression les interdisait;
Personne ne m'écouteEnvoyé par denisC
![]()
Merci pour votre aide si précieuse messieurs !![]()
Je marque le sujet en résolu !![]()
Toujours moi sur le même sujet :
Si je souhaite maintenant quelque chose du style : je ne veux pas la chaine ZIGO dans ma saisie.
Quelle serait l'expression régulière correspondante ?
Merci
mieux vaux faire dans l'autre sens... Teste si ta chaine contient ZIGO et tu en déduiras si elle ne contient pas ZIGO
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 !(/ZIGO/.test(chaine))![]()
Bien vu ! Merci Denis![]()
et dans ce cas, on se passe allègrement d'une expression rationnelle hein! un bon vieux indexOf et c'est bon;
Partager