
Retourne la position de la première sous-chaîne correspondant à regex dans string.
Retourne -1 s'il n'y a aucune correspondance.
Recherche la première ou toutes les correspondance de regex dans string et retourne le résultat dans un tableau.
Retourne un tableau vide s'il n'y a aucune correspondance.
Retourne une chaine dans laquelle une ou de toutes les sous-chaînes correspondant à regex dans string, sont remplacées par la chaine str.
str peut être une fonction de callback qui renvoie une chaine.
g pour global : toutes les correspondances sont cherchées, au lieu de seulement la première.
i pour ignore-case : ignore la "casse" (aucune distinction entre les majuscules et les miniscules)
On peut écrire une expression rationnelle de manière littérale et compacte en l'insérant entre deux "/", comme dans /\d+/.
Les éventuels modificateurs se placent après le deuxième "/", comme dans /[0-9a-z]*/gi.
On peut aussi écrire une expression rationnelle à l'aide de son constructeur, comme dans var expression = new RegExp("\d+");.
Les éventuels modificateurs se placent en deuxième paramètre, comme dans new RegExp("[0-9a-z]*" , "gi");.
var ret = string.search(/monexpression/); expression constante sans modificateur.
var ret = string.match(eval("/" + var + "/gi")); expression variable avec modificateur.
var ret = string.replace(/ab([a-f]+)c(\d)/i , "$1 $2");, expression constante avec modificateur, utilisation des parenthèses de capture.
Sur la première ligne on écrit l'expression le modèle de l'expression rationelle, littéralement ou à l'aide de son constructeur:
var r = /monexpression/g; ou var r = new RegExp('monexpression' , 'g'); sont équivalents.
Sur la deuxième ligne, on applique le modèle:
var ret = string.match(r);
On utilise le constructeur:
var rg = new RegExp(today , 'ig');
On peut aussi utiliser eval:
var rg = eval("/"+today+"/gi");
Pour échapper les caractères spéciaux qui peuvent exister dans la variable, on peut utiliser
RegExp.quote = function(str) {
return str.replace(/([.?*+^$[\]\\(){}-])/g, "\\$1");
};
var pseudook = pseudo.match(/^[a-zA-Z0-9_-]{3,16}$/);
var mailok = mail.match(/^[a-zA-Z0-9.-]+@[a-z0-9.-]{2,}\.[a-z]{2,4}$/);