Maison > interface Web > js tutoriel > Comment inclure des variables dans des expressions régulières en JavaScript ?

Comment inclure des variables dans des expressions régulières en JavaScript ?

DDD
Libérer: 2024-11-09 02:11:02
original
511 Les gens l'ont consulté

How do I include variables in regular expressions in JavaScript?

Inclure des variables dans les expressions régulières en JavaScript

En JavaScript, l'utilisation d'une variable dans le cadre d'une expression régulière peut être obtenue en créant un nouvel objet RegExp avec la variable intégrée dans le modèle.

Considérons l'exemple suivant :

function(input) {
    var testVar = input;
    string = ...
}
Copier après la connexion

Pour inclure testVar dans l'expression régulière, un nouvel objet RegExp doit être créé :

const regex = new RegExp(`ReGeX${testVar}ReGeX`);
...
string.replace(regex, "replacement");
Copier après la connexion

Cela crée un objet d'expression régulière avec la valeur de la variable incorporée dans le modèle.

Remarque : Si la variable contient une entrée utilisateur ou peut potentiellement contenir du contenu malveillant, il est essentiel d'échapper à la variable à l'aide de escape() pour éviter les vulnérabilités de sécurité.

Mise à jour (2019) :

Le développement JavaScript moderne utilise souvent des littéraux de modèles pour l'interpolation de chaînes. Voici une version mise à jour de l'exemple utilisant des littéraux de modèle :

function(input) {
    var testVar = input;
    string = ...
}
...
string.replace(/ReGeX${testVar}ReGeX/, "replacement");
Copier après la connexion

Cette méthode exploite les littéraux de modèle pour construire dynamiquement le modèle d'expression régulière, obtenant ainsi efficacement le résultat souhaité.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal