Easy-Micro


LANGAGE Langage JavaScript
Objet Regexp

L'objet JavaScript Regexp

L'objet JavaScript Regexp permet d'utiliser les expressions régulière.

Les méthodes de l'objet RegExp

Les méthodes sont des fonctions liées à un objet déterminé, qui exécutent des actions.

• exec() : appliquer une expression régulière
• test() : appliquer une expression régulière (pour le test: essayer)

strong>Exemple d'utilisation de la méthode exec()
Objectif: transformer un format de téléphone "0123456789" en "01 23 45 67 89"

<script type="text/javascript">
var tel = "0123456789";
var trans = /([0-9]{2})([0-9]{2})([0-9]{2})([0-9]{2})([0-9]{2})/;
trans.exec(tel);
document.write(RegExp.$1," ",RegExp.$2," ",RegExp.$3," ",RegExp.$4," ",RegExp.$5);
</script>

Résultat :

L'expression régulière dans la variable "trans" reproduit le format de base recherché :
5 bloc de 2 chiffres de 0 à 9, soit [0-9]{2}
"RegExp.$x" permet d'appeler et d'écrire ces 5 blocs avec un formatage precis.

On peut récupérer la valeur de la variable "tel" depuis un champ de formulaire appelé "telephone" comme ceci: var tel = window.document.forms[0].telephone.value;

Autre exemple d'utilisation de la méthode exec()
Objectif: rechercher le nombre d'occurences d'un mot

<script type="text/javascript">
var phrase = "Easy-micro, la micro facile";
var recherche = /(micro)/g;
var resultat = recherche.exec(phrase);

if (resultat == null)
document.write("Pas d'occurence"); }
else { document.write(resultat.length + " occurrences"); }
</script>

Résultat :

Note: l'expressions régulière "/.../g" spécifie une recherche avec respect de la casse et
l'expressions régulière "/.../i" spécifie une recherche sans respecter la casse.

Un if est utilisé dans l'exemple ci-dessus, en guise de test dans le cas ou il n'y a pas d'occurence comme, par exemple, une recherche sur le mot "Micro" toujours avec l'option "g".

Autre exemple d'utilisation de la méthode exec()
Objectif: vérifier la validité d'un code postal

<script type="text/javascript">
function verif_cp(cp)
{
var reg_cp = /^[0-9]{5}$/
//code postal francais ^(0[1-9]|[1-9][0-9])[0-9]{3}$
if (!(reg_cp.exec(cp)!=null))
{
alert("Le code postal saisie n'est pas au format valide !");
return(false);
}
return(true);
}
</script>

Voir d'autre exemples d'expressions régulière avec l'objet string.
Voir aussi la syntaxe des expressions régulière sur l'excellent site "Self Html".


Suivez les aventures des skippers aquitains sur EasyVoile.com
Flux RSS Easy-Micro - Abonnez-vous Easy-Micro [ François Bisch ]
Samedi 24 août 2019 - Semaine 34 - Saint Barthélémy (Demain: Saint Louis)
Aujourd'hui, c'est l'anniversaire de Jean Michel Jarre (1948-71 ans), compositeur français de musique électronique (Oxygène). Autre 24 août: 1572 - Massacre des protestants par les catholiques.
Haut de page Easy-Micro