Maison > Article > interface Web > Guide d'utilisation des paramètres d'expression régulière javascript Compétences /g, /i et /gi_javascript
regularexpression=/pattern/[switch]
Ce commutateur a trois valeurs : g : correspondance globale i : ignorer la casse gi : correspondance globale ignorer la casse Référence du langage JScript
-------------------------------------------------------------- --- ------------------------------------
Références arrière L'une des caractéristiques les plus importantes des expressions régulières est la possibilité de stocker une partie d'un modèle correspondant avec succès pour une utilisation ultérieure. Rappelez-vous que l'ajout de parenthèses autour d'un modèle d'expression régulière ou d'une partie d'un modèle entraînera le stockage de cette partie de l'expression dans un tampon temporaire. Vous pouvez utiliser les métacaractères non capturants '?:', '?=' ou '?!' pour ignorer l'enregistrement de cette partie de l'expression régulière.
Chaque sous-correspondance capturée est stockée telle qu'elle est rencontrée de gauche à droite dans le modèle d'expression régulière. Les tampons dans lesquels les sous-correspondances sont stockées sont numérotés à partir de 1 et numérotés consécutivement jusqu'à un maximum de 99 sous-expressions. Chaque tampon est accessible à l'aide de « n », où n est un nombre décimal à un ou deux chiffres qui identifie un tampon spécifique.
L'une des applications les plus simples et les plus utiles des références arrière est la possibilité de déterminer la position dans le texte où se produisent deux occurrences consécutives du même mot. Jetez un œil à la phrase suivante : Le prix de l’essence augmente-t-il ? D’après ce qui est écrit, la phrase ci-dessus contient clairement de multiples répétitions de mots. Ce serait bien s'il y avait un moyen de modifier cette phrase sans chercher les doublons de chaque mot. L'expression régulière JScript suivante utilise une sous-expression pour réaliser cette fonctionnalité.
/b([a-z] ) L'expression VBScript équivalente à 1b/gi est :
"b([a-z] ) 1b" Dans cet exemple, la sous-expression est chaque terme entre parenthèses. L'expression capturée se compose d'un ou plusieurs caractères alphabétiques, comme spécifié par '[a-z]'. La deuxième partie de l'expression régulière est une référence à la sous-correspondance capturée précédemment, qui est la deuxième occurrence du mot correspondant à l'expression ajoutée. « 1 » est utilisé pour spécifier la première sous-correspondance. Les métacaractères de limite de mot garantissent que seuls les mots individuels sont détectés. Si cela n'était pas fait, des expressions telles que « est émis » ou « ceci est » seraient incorrectement reconnues par l'expression.
Dans une expression JScript, le drapeau global (« g ») après une expression régulière indique que l'expression sera utilisée pour trouver autant de correspondances que possible dans la chaîne d'entrée. La sensibilité à la casse est spécifiée par un marqueur de sensibilité à la casse (« i ») à la fin de l’expression. Les balises multilignes spécifient les correspondances potentielles qui peuvent se produire de chaque côté d'un caractère de nouvelle ligne. Pour VBScript, diverses balises ne peuvent pas être définies dans des expressions mais doivent être définies explicitement à l'aide des propriétés de l'objet RegExp.
À l'aide de l'expression régulière présentée ci-dessus, le code JScript suivant peut utiliser les informations de sous-correspondance pour remplacer deux occurrences consécutives du même mot par le même mot dans une chaîne littérale :
var ss = "Est-ce que le coût de l'essence augmente ?.n"; var re = /b([a-z] ) 1b/gim; //Créer une expression régulière style.var rv = ss.replace (re ,"$1"); //Remplacez deux mots par un mot.