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

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

Susan Sarandon
Libérer: 2024-11-09 11:07:02
original
383 Les gens l'ont consulté

How to Dynamically Inject Variables into Regular Expressions in JavaScript?

Placer des variables dans des expressions régulières : une solution révisée

Dans le développement de logiciels, l'incorporation de valeurs dynamiques dans des expressions régulières peut être un défi. Cet article explore une solution efficace à ce problème, en proposant une réponse révisée à la question fréquemment posée : « Comment mettre une variable dans une expression régulière en JavaScript ? »

L'approche originale tentait d'insérer une variable dans un expression régulière utilisant la concaténation de chaînes. Cependant, cette méthode n'est pas adaptée car elle traite la variable comme une chaîne littérale plutôt que comme une valeur dynamique.

La solution présentée ici consiste à créer une nouvelle expression régulière à l'aide du constructeur RegExp et d'une chaîne modèle. Cette technique vous permet d'intégrer dynamiquement des variables dans l'expression.

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

Considérations de sécurité

Lors de l'utilisation d'une entrée fournie par l'utilisateur dans des expressions régulières, il est crucial pour échapper à la variable afin d'empêcher une entrée malveillante de perturber votre code.

ES6 Update

Avec l'avènement d'ES6, l'approche recommandée a été mise à jour pour utiliser des chaînes de modèles, qui offrent une lisibilité et une concision améliorées.

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

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
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal