L'objet RegExp - Cours Javascript

RegExp

Définition

Dans ce cahpitre, nous allons étudier l'objet javascript RegExp

Les raccourcis doivent être entre [] :
Exemple de code :
RegExp["$_"]

Certaines propriétés sont des propriétés d'instance de RegExp, d'autre de l'objet global RegExp. Dans ce dernier cas, vous devrez vous méfier du résultat retourné, voir input.

input

Définition

La propriété javascript input de l'objet RegExp permet de connaître la chaîne originale pour laquelle une correspondance a été trouvée.

La propriété javascript input de l'objet RegExp peut être remplacée par le raccourci "$_"
Exemple de code :
var momo = "ce aliasdmc est un chouette type";
var exp_reg = /un/gi;
var resultat = momo.replace(exp_reg, "une");
alert(RegExp.input);
//alert(RegExp["$_"]);
//ce aliasdmc est un chouette type

Attention

C'est toujours la dernière chaîne originale pour laquelle une correspondance a été trouvée qui est "stockée" dans l'input.
Exemple de code :
var texte = new String("Jules a Henri");
var profils = /a+/;
var resultat = texte.replace(profils,"a");

var momo = "ce aliasdmc est un chouette type";
var exp_reg = /pas/gi;
resultatz = momo.replace(exp_reg, "une");
alert(RegExp["$_"])
//Jules a Henri

ignoreCase

Définition

La propriété javascript ignoreCase de l'objet RegExp permet de connaître la valeur du modificateur i.

La propriété javascript ignoreCase de l'objet RegExp renvoie :
- true, si le modificateur est présent
- false, dans le cas inverse.
Exemple de code :
var momo = "ce aliasdmc est un chouette type";
var exp_reg = /un/gi;
alert(exp_reg.ignoreCase);
//true
var exp_reg = /un/;
alert(exp_reg.ignoreCase);
//false

global

Définition

La propriété javascript global de l'objet RegExp permet de connaître la valeur du modificateur g.

La propriété javascript global de l'objet RegExp renvoie :
- true, si le modificateur est présent
- false, dans le cas inverse.
Exemple de code :
var momo = "ce aliasdmc est un chouette type";
var exp_reg = /un/g;
alert(exp_reg.global);
//true
var exp_reg = /un/;
alert(exp_reg.global);
//false

multiline

Définition

La propriété javascript multiline de l'objet RegExp permet de connaître la valeur du modificateur m.

La propriété javascript multiline de l'objet RegExp renvoie :
- true, si le modificateur est présent
- false, dans le cas inverse.
Exemple de code :
var momo = "ce aliasdmc est un chouette type";
var exp_reg = /un/m;
alert(exp_reg.multiline);
//true
var exp_reg = /un/;
alert(exp_reg.multiline);
//false

source

Définition

La propriété javascript source de l'objet RegExp permet de connaître de profil ou motif de l'expression régulière.
Exemple de code :
var momo = "ce un aliasdmc est un chouette type";
var exp_reg = /(un).*(dmc)/gi;
resultat = momo.replace(exp_reg, "une");
alert(exp_reg.source);

La propriété javascript source de l'objet RegExp ne renvoie pas les slashes délimiteurs et les modificateurs.

lastIndex

Définition

La propriété javascript lastIndex de l'objet RegExp permet de connaître ou de modifier le point de départ de la recherche du profil dans la chaîne de caractères.
Exemple de code :
var momo = "ce un aliasdmc est un chouette type";
var exp_reg = /un/gi;
exp_reg.lastIndex = 5;
for(var i=0;i<3;i++){
  resultat = exp_reg.test(momo);
  alert(exp_reg.lastIndex);
}
//21
//0
//5

lastMatch

Définition

La propriété javascript lastMatch de l'objet RegExp permet de connaître la dernière correspondance trouvée.

La propriété javascript lastMatch de l'objet RegExp peut être remplacée par le raccourci "$&".
Exemple de code :
var momo = "ce uan aliasdmc est ubn chouette type";
var exp_reg = /u[ab]n/gi;
resultat = momo.replace(exp_reg, "une");
alert(RegExp.lastMatch);
//alert(RegExp["$&"]);
//ubn

lastParent

Définition

La propriété javascript lastParent de l'objet RegExp permet de connaître la dernière sous-chaîne parenthésée.

La propriété javascript lastParent de l'objet RegExp peut être remplacée par le raccourci "$+".
Exemple de code :
var momo = "ce un aliasdmc est un chouette type";
var exp_reg = /(un).*(dmc)/gi;
resultat = momo.replace(exp_reg, "une");
alert(RegExp.lastParen);
//dmc
var momo = "ce un aliasdmc est un chouette type";
var exp_reg = /un.*dmc/gi;
resultat = momo.replace(exp_reg, "une");
alert(RegExp.lastParen);
//alert(RegExp["$+"]);
// chaîne vide

leftContext

Définition

La propriété javascript leftContext de l'objet RegExp permet de connaître la chaîne qui précéde la dernière correspondance trouvée.

La propriété javascript leftContext de l'objet RegExp peut être remplacée par le raccourci "$`".
Exemple de code :
var momo = "ce un aliasdmc est un chouette type";
var exp_reg = /un/gi;
resultat = momo.replace(exp_reg, "une");
alert(RegExp.leftContext);
//alert(RegExp["$`"]);
//ce un aliasdmc est

rightContext

Définition

La propriété javascript rightContext de l'objet RegExp permet de connaître la chaîne qui suit la dernière correspondance trouvée.

La propriété javascript rightContext de l'objet RegExp peut être remplacée par le raccourci "$'".
Exemple de code :
var momo = "ce un aliasdmc est un chouette type";
var exp_reg = /un/gi;
resultat = momo.replace(exp_reg, "une");
alert(RegExp.rightContext);
//alert(RegExp["$'"]);
// chouette type