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 ]
Mardi 22 janvier 2019 - Semaine 04 - Saint Vincent (Demain: Saint Barnard)
Aujourd'hui, c'est l'anniversaire de Frank Leboeuf (1968-51 ans), footballeur français (défenseur). Autre 22 janvier: 1981 - Début de la série américaine Dallas sur les écrans français (TF1).
Haut de page Easy-Micro