Maison >interface Web >js tutoriel >De combien de barres obliques inverses ai-je besoin pour représenter une barre oblique inverse dans les chaînes JavaScript et les expressions régulières ?

De combien de barres obliques inverses ai-je besoin pour représenter une barre oblique inverse dans les chaînes JavaScript et les expressions régulières ?

Barbara Streisand
Barbara Streisandoriginal
2024-12-21 12:34:10195parcourir

How Many Backslashes Do I Need to Represent One Backslash in JavaScript Strings and Regular Expressions?

Échapper aux barres obliques inverses dans les chaînes

En JavaScript, les barres obliques inverses jouent un rôle essentiel dans les chaînes littérales et les expressions régulières. Pour inclure une barre oblique inverse dans une chaîne ou une expression régulière sans déclencher sa signification particulière, il est crucial de la doubler, en utilisant .

Chaînes

Considérez la chaîne suivante :

var str = "\I have one backslash";

Cette chaîne commence par une barre oblique inverse, qui agit comme un caractère d'échappement qui déclenche une séquence d'échappement. La séquence demande à l'analyseur de placer une véritable barre oblique inverse dans la chaîne.

Expressions régulières

Dans les expressions régulières, la barre oblique inverse est également importante pour les caractères spéciaux. Pour faire correspondre une seule barre oblique inverse dans une expression régulière, vous en avez également besoin de deux :

var rex = /\/;

Cette expression régulière trouvera les occurrences d'une seule barre oblique inverse.

Création d'expressions régulières à partir de chaînes

Si vous créez une expression régulière à l'aide d'une chaîne, vous rencontrez deux niveaux de s'échapper :

// Matches *one* backslash
var rex = new RegExp("\\");

Le premier échappe à la barre oblique inverse dans la chaîne, tandis que le second échappe à la barre oblique inverse dans le modèle d'expression régulière.

Mise à jour ES2015

ES2015 a introduit les littéraux de modèle, les fonctions de balise et la fonction String.raw, offrant une nouvelle façon de s'échapper des barres obliques inverses. Par exemple :

let str = String.raw`\apple`;

Cette chaîne contiendra les caractères , a, p, p, l et e. Cependant, soyez prudent lorsque vous utilisez ${ dans les littéraux de modèle, car cela déclenche des substitutions.

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!

Déclaration:
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