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 ]
Lundi 18 mars 2019 - Semaine 12 - Saint Cyrille de Jérusalem (Demain: Saint Joseph)
Aujourd'hui, c'est l'anniversaire de Luc Besson (1959-60 ans), réalisateur et producteur français, de Xavier Deluc (1958), acteur français et de Laetitia Hallyday (1975). Autre 18 mars: 1314 : supplice de Jacques de Molay, grand maître des Templiers.
Haut de page Easy-Micro