Comment échapper aux barres obliques inverses dans les chaînes et les expressions régulières
En JavaScript, les barres obliques inverses ont des significations particulières dans les expressions régulières et les chaînes littérales. Pour inclure une véritable barre oblique inverse dans une chaîne ou une expression régulière, vous devez utiliser des doubles barres obliques inverses : .
Chaînes
Pour créer une chaîne contenant une seule barre oblique inverse, utilisez deux barres obliques inverses dans la chaîne littérale :
var str = "\I have one backslash";
Régulier Expressions
Pour créer une expression régulière qui correspond à une seule barre oblique inverse, utilisez également deux barres obliques inverses dans le modèle d'expression régulière :
var rex = /\/;
Création d'expressions régulières à partir de chaînes
Lorsque vous créez une expression régulière à partir d'une chaîne, gardez à l'esprit que vous avez affaire à deux niveaux : le niveau chaîne et l'expression régulière. niveau. Pour créer une expression régulière qui correspond à une seule barre oblique inverse d'une chaîne, utilisez quatre barres obliques inverses :
var rex = new RegExp("\\");
Syntaxe ES2015 et ES2018
Dans les versions récentes de JavaScript, vous pouvez utilisez les littéraux de modèle et la fonction String.raw pour simplifier la barre oblique inverse escaping :
let str = String.raw`\apple`;
Cela donnera une chaîne contenant les caractères , a, p, p, l et e. Notez que vous devez éviter d'utiliser ${ dans les littéraux de modèle, car cela démarre une substitution.
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!