La présentation est en train de télécharger. S'il vous plaît, attendez

La présentation est en train de télécharger. S'il vous plaît, attendez

Utilisation des expressions régulières pour le contrôle des chaînes de caractères ● Les expressions régulières permettent d’effectuer des traitements sur.

Présentations similaires


Présentation au sujet: "Utilisation des expressions régulières pour le contrôle des chaînes de caractères ● Les expressions régulières permettent d’effectuer des traitements sur."— Transcription de la présentation:

1 Utilisation des expressions régulières pour le contrôle des chaînes de caractères ● Les expressions régulières permettent d’effectuer des traitements sur des chaînes de caractères. Leur construction respecte une syntaxe qui n’est pas propre au Javascript (elle vient de PERL (langage informatique dont la caractéristique est d'avoir été inventé par un linguiste !). ● Une expression régulière est créée en instanciant un objet de la classe RegExp. Il s’agit de la définition du format attendu de la chaîne de caractères.

2 Exemple d’expression régulière Définition d’une fonction qui teste la vraisemblance d’une adresse mél... on définit ce que l'on veut.... une adresse email, c'est une suite de caractère... des lettres non accentuées, sans espace... Et ce, du début au signe @... Donc le début sera : ^[A-z]*@ Par contre, on sait qu'il peut y avoir un point, souligné ou tiret dès la deuxième position... Donc ?????

3 Simplification, et amélioration la solution : ^[A-z0-9][A-z0-9\.\_\-]*@ On peut simplifier, car le point n'est pas dangereux, le souligné non plus, et si on choisit bien la place du -, il est automatiquement « dé-spécialisé »... Encore une erreur à gérer, on ne peut pas finir par., _ ou - Donc ?

4 Le nom de domaine ^[A-z0-9][A-z0-9._-][A-z0-9]*@ Maintenant, imaginons que nous voulons accepter uniquement les adresses email de wanadoo.fr ou de free.fr (en fin de chaîne) ? Quelle expression rationnelle utiliser ? On en profitera pour supprimer la référence aux majuscules, c'est inutile dans un mail... Donc ?

5 Tous les noms de domaine ^[a-z0-9][a-z0-9._-]*[a-z0-9]@(wanadoo|free).fr$ Remarquez le $ de la fin, et l'usage du | (ou) Maintenant, nous acceptons tous les noms de domaines, et deux ou trois lettres pour la fin (comme fr, uk, com, edu, etc)

6 Fin de la construction ^[a-z0-9][a-z0-9._-]*[a-z0-9]@[a-z0-9]*\.[a-z]{2,3}$ Utilisation ici du multiplicateur {a,b}... L'expression est assez précise... Pourtant quelques (rares) erreurs pourraient se produire... Lesquelles ?

7 Exemple RegExp dans une page web function testEmail(form, champ) { var format=/^[a-z0-9][a-z0-9._-]*[a-z0-9]@[a-z0-9]*\.[a-z]{2,3}$/; var leChamp=eval('document.'+form+'.'+champ); if (!format.test(leChamp.value)) alert ('Email incorrect'); } ////et plus loin, dans le html, on appelera la fonction adresse email


Télécharger ppt "Utilisation des expressions régulières pour le contrôle des chaînes de caractères ● Les expressions régulières permettent d’effectuer des traitements sur."

Présentations similaires


Annonces Google