Quels sont tous les personnages d'échappement?

118

Je connais certains des caractères d'échappement en Java, par exemple

\n : Newline
\r : Carriage return
\t : Tab
\\ : Backslash
...

Y a-t-il une liste complète quelque part?

izb
la source
11
Ceci est dans la spécification du langage Java
skaffman
2
Ne posez pas de questions sur Internet sur des choses que vous pouvez tout aussi facilement ou plus facilement rechercher par vous-même. Vous courez le risque d'une grave erreur.
Marquis of Lorne

Réponses:

184

Vous pouvez trouver la liste complète ici .

  • \t Insérez une tabulation dans le texte à ce stade.
  • \b Insérez un retour arrière dans le texte à ce stade.
  • \n Insérez une nouvelle ligne dans le texte à ce stade.
  • \r Insérez un retour chariot dans le texte à ce stade.
  • \f Insérez un saut de formulaire dans le texte à ce stade.
  • \' Insérez un caractère de guillemet simple dans le texte à ce stade.
  • \" Insérez un caractère de guillemet double dans le texte à ce stade.
  • \\ Insérez une barre oblique inverse dans le texte à ce stade.
rtperson
la source
29
Il manque les échappements Unicode et octaux dans la liste: \ u1234 \ 012 \ 01 \ 0
Sampo
Il manque également le caractère de cloche \aet le caractère nul \0.
bvdb
9
\ane compile pas en javac 1.8.0_20:illegal escape character: String test = "\a";
Ehryk
3
"Les échappements Unicode sont prétraités avant l'exécution du compilateur." - Mark Peters . Ils sont donc différents des échappements de chaîne standard répertoriés ici. Merci Jan pour le commentaire sur cette réponse
Josiah Yoder
43
Java Escape Sequences:

\u{0000-FFFF}  /* Unicode [Basic Multilingual Plane only, see below] hex value 
                  does not handle unicode values higher than 0xFFFF (65535),
                  the high surrogate has to be separate: \uD852\uDF62
                  Four hex characters only (no variable width) */
\b             /* \u0008: backspace (BS) */
\t             /* \u0009: horizontal tab (HT) */
\n             /* \u000a: linefeed (LF) */
\f             /* \u000c: form feed (FF) */
\r             /* \u000d: carriage return (CR) */
\"             /* \u0022: double quote (") */
\'             /* \u0027: single quote (') */
\\             /* \u005c: backslash (\) */
\{0-377}       /* \u0000 to \u00ff: from octal value 
                  1 to 3 octal digits (variable width) */

Le plan multilingue de base correspond aux valeurs unicode de 0x0000 à 0xFFFF (0 à 65535). Les plans supplémentaires ne peuvent être spécifiés en Java que par plusieurs caractères: l'héritoglyphe égyptien A054 (couché dude) est U+1303F/ 𓀿et devrait être divisé en "\uD80C\uDC3F"(UTF-16) pour les chaînes Java. Certaines autres langues prennent en charge les plans supérieurs avec "\U0001303F".

Ehryk
la source
La réponse existante ne traite pas des séquences d'échappement unicode et octal en Java.
Ehryk
2
\u000ane semble pas fonctionner -> - invalid character constant voir plus ici
Jan
6
@Jan Ça marche, peut-être trop bien. Contrairement à, par exemple, \ret \n, les échappements unicode sont prétraités avant que le compilateur ne soit exécuté comme le précise la question à laquelle vous avez lié. En tant que tel, il insère un saut de ligne littéral dans votre code et échoue à cause de cela. Cependant, le code d'échappement "fonctionne" car il était censé fonctionner dans la spécification.
Ehryk
0

Oui, vous trouverez ci-dessous un lien de docs.Oracle où vous pouvez trouver la liste complète des caractères d'échappement en Java.

Les caractères d'échappement sont toujours précédés de "\" et utilisés pour effectuer une tâche spécifique telle que passer à la ligne suivante, etc.

Pour plus de détails sur Escape Character, reportez-vous au lien suivant:

https://docs.oracle.com/javase/tutorial/java/data/characters.html

manisha mulchandani
la source
0

Ce sont des caractères d'échappement qui sont utilisés pour manipuler la chaîne.

\t  Insert a tab in the text at this point.
\b  Insert a backspace in the text at this point.
\n  Insert a newline in the text at this point.
\r  Insert a carriage return in the text at this point.
\f  Insert a form feed in the text at this point.
\'  Insert a single quote character in the text at this point.
\"  Insert a double quote character in the text at this point.
\\  Insert a backslash character in the text at this point.

En savoir plus sur eux à partir d'ici.

http://docs.oracle.com/javase/tutorial/java/data/characters.html

Hemin
la source