Tout JavaScript.com - Scripts, Tutoriaux, Forums pour webmasters et développeurs
Retour à l'accueil
Rechercher :    

Les indispensables
Magic Menu
Les meilleurs scripts
Les forums
Les tutoriaux
La référence JavaScript
Les actus du net
Les petites annonces

Shopping
Mon livre : Guide complet Javascript - Nouvelle édition
Hébergement web

Compteur de visites
CountUs.fr - Combien de visiteurs actuellement sur votre site ? Avec CountUs, vous le saurez !

Les javascripts
Les plus vus
Les mieux notés
La boutique

Les tutoriaux
Introduction javascript
La structure javascript
Les limites de javascript
Les popups
Les formulaires
Le DHTML
Les cookies
Les frames
Les maths
Les chaînes de caractères
Les expressions régulières
Débugger un script
AJAX / XMLHTTPRequest
Introduction au PHP
Javascript et PHP
Traiter les données PHP
Intro base de données
Optimiser ses développements
Tous les tutoriaux

Les services
Les questions fréquentes
Les forums | Le chat
L'annuaire de sites
Le livre d'or
Contacts
A propos du site
La newsletter
 Inscription à la newsletter
HTML - Texte

Les partenaires
Beauté-test
Mémoclic
Glandouille.com
Nord vs Sud
Révélateur.com
ActuLab
Foorby, favoris en ligne
Une place pour toi
Cadeau gratuit
Config Mac
Pifex











 
Déclarer un objet RegExp
Il existe 2 manières pour déclarer un objet RegExp. La plus lisible est d'utiliser le constructeur RegExp :
var reg=new RegExp(pattern, option);
Ici, reg est devenu un objet de type RegExp.
pattern est le motif associé, ce qui permet de faire le traitement. Son format est défini dans le paragraphe suivant.
option est une chaîne de caractère qui peut prendre les valeurs :
"", vide, aucune option,
"g", recherche globale sur toute la chaîne,
"i", ne pas faire la distinction majuscule/minuscule,
"gi", association de g et i.
Une autre notation, plus compacte, mais moins lisible est utilisée :
var exp=/pattern/option; Les 2 notations sont exactement équivalentes.

La syntaxe du motif pattern
C'est bien l'écriture du motif qui va faire toute la puissance de votre expression régulière. Voici les principales syntaxes possibles :
MotifSignification
^Début de ligne ou de chaîne
$Fin de ligne ou de chaîne
.N'importe quel caractère
x|yCaractère x ou y
[abc]Groupe de caractères : n'importe lequel de ceux entre crochets
[a-z]Groupe de caractères : n'importe lequel de a à z
[^0-9]Groupe de caractères : tous sauf ceux entre crochets
(x)Expression parenthésée (mémorisée)
*Caractère précédent de 0 à X fois
+Caractère précédent de 1 à X fois
?Caractère précédent de 0 à 1 fois
{n}Caractère précédent exactement n fois
{n,}Caractère précédent au moins n fois
{n,m}Caractère précédent entre n et m fois
\N'est pas un caractère, sert de caractère d'échappement
\\Caractère \
\dChiffres (équivalent à [0-9])
\DSauf chiffres (équivalent à [^0-9])
\bFrontière de mot (espace, alinéa, ...)
\sCaractère d'espacement (espace, tabulation, saut de page, ...) équivalent à [ \f\n\r\t\v]
\SUn seul caractère sauf un espacement
\wN'importe quel caractère alphanumérique, y compris undescore (_) équivalent à [A-Za-z0-9_]
\WTout sauf un caractère alphanumérique équivalent à [^A-Za-z0-9_]


Exemples de motif
Si on reprend l'exemple du contôle de login, le pattern valait : ^[a-zA-Z0-9]{3,8}$
La signification est :
^ : pour montrer le début de la chaine,
[a-zA-Z0-9] : pour les caractères alphanumérique de a à z, de A à Z et de 0 à 9,
{3,8} : pour indiquer qu'il faut une longueure de 3 à 8 caractères alphanumériques,
$ : pour interdire tout caractère après.

C'est pas dur finalement :)

Pour tester qu'une saisie est un mail valide, voici la chaîne pattern à utiliser :
^[a-zA-Z0-9\-_]+[a-zA-Z0-9\.\-_]*@[a-zA-Z0-9\-_]+\.[a-zA-Z\.\-_]{1,}[a-zA-Z\-_]+
La signification de cette chaîne est logique également :
^ : début du mail
[a-zA-Z0-9\-_]+ : Au moins un caractère alphanumérique en début de mail
[a-zA-Z0-9\.\-_]* : Tous les caractères alphanumériques plus ., - et _ au moins 1 fois
@ : une fois arobase
[a-zA-Z0-9\-_]+ : Tous les caractères alphanumériques plus ., - et _ au moins 1 fois
\. : 1 fois le caractère .
[a-zA-Z0-9\.\-_]{1,} : Tous les caractères alphanumériques plus ., - et _ au moins 2 fois
[a-zA-Z0-9\-_]+ : Au moins un caractère alphanumérique en fin de mail


Nous allons voir que les expressions régulières ne servent pas seulement à vérifier une saisie.
On peut également faire des traitements sur des chaînes assez impressionnants !



| © Tout JavaScript.com 1999-2005 | Scripts | Tutoriaux | Forums | Référence | Magic Menu V2 | Mailociraptor | Petites annonces informatiques |


Edité par DevTribu sarl  Google
Serveur dédié : Page générée en 1 msec
18/05/2008 03:27:51 - OB = off