¿Cuáles son todos los personajes de escape?


118

Conozco algunos de los caracteres de escape en Java, por ejemplo

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

¿Hay una lista completa en alguna parte?



2
No haga preguntas en Internet sobre cosas que puede buscar con la misma facilidad o más fácilmente. Corre el riesgo de cometer un error grave.
Marqués de Lorne

Respuestas:


184

Puedes encontrar la lista completa aquí .

  • \t Inserte una pestaña en el texto en este punto.
  • \b Inserte un retroceso en el texto en este punto.
  • \n Inserte una nueva línea en el texto en este punto.
  • \r Inserte un retorno de carro en el texto en este punto.
  • \f Inserte un avance de formulario en el texto en este momento.
  • \' Inserte un carácter de comilla simple en el texto en este punto.
  • \" Inserte un carácter de comillas dobles en el texto en este punto.
  • \\ Inserte un carácter de barra invertida en el texto en este punto.

29
A la lista le faltan los escapes Unicode y octal: \ u1234 \ 012 \ 01 \ 0
Sampo


También falta el carácter de campana \ay el carácter nulo \0.
bvdb

9
\ano se compila en javac 1.8.0_20:illegal escape character: String test = "\a";
Ehryk

3
"Los escapes Unicode se preprocesan antes de que se ejecute el compilador". - Mark Peters . Por lo tanto, son diferentes de los escapes de cadena estándar que se enumeran aquí. Gracias Jan por el comentario a esta respuesta
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) */

El plano multilingüe básico son los valores Unicode de 0x0000 - 0xFFFF (0 - 65535). Los planos adicionales solo se pueden especificar en Java mediante varios caracteres: el heiroglyph egipcio A054 (tipo acostado) es U+1303F/ 𓀿y tendría que dividirse en "\uD80C\uDC3F"(UTF-16) para cadenas de Java. Algunos otros idiomas admiten planos superiores con "\U0001303F".


La respuesta existente no aborda las secuencias de escape unicode y octal en Java.
Ehryk

2
\u000ano parece funcionar -> - invalid character constant ver más aquí
enero

6
@Jan Está funcionando, quizás demasiado bien. A diferencia de, por ejemplo, \ry \n, los escapes Unicode se preprocesan antes de que se ejecute el compilador como especifica la pregunta a la que se vinculó. Como tal, está insertando una línea de alimentación literal en su código y falla debido a eso. Sin embargo, el código de escape está "funcionando" como se pretendía que funcionara en la especificación.
Ehryk


0

Estos son caracteres de escape que se utilizan para manipular cadenas.

\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.

Lea más sobre ellos desde aquí.

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

Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.