Échappage des expressions régulières en JavaScript
Existe-t-il une fonction intégrée en JavaScript pour échapper les caractères spéciaux dans les chaînes destinées à être utilisées dans les expressions régulières ?
Réponse :
Non, il n'y a pas fonction RegExp.escape intégrée en JavaScript. Cependant, la fonction mentionnée ci-dessus peut être utilisée pour obtenir le résultat souhaité :
function escapeRegex(string) { return string.replace(/[/\-\^$*+?.()|[\]{}]/g, '\$&'); }
Cette fonction échappe à tous les caractères spéciaux interprétés par des expressions régulières, notamment /, , -, ^, $, *, , ?, (), |, [, ] et { }.
Voici un exemple d'utilisation de la fonction :
var usersString = "Hello?!*`~World()[]"; var expression = new RegExp(escapeRegex(usersString)); var matches = "Hello".match(expression);
Dans Dans cet exemple, la fonction escapeRegex est utilisée pour échapper les caractères spéciaux dans la variable usersString. La chaîne résultante est ensuite utilisée pour créer un nouvel objet d'expression régulière. La méthode match est ensuite utilisée pour rechercher des correspondances de l'expression régulière dans la chaîne Hello.
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!