Unicode Escape / Unescape
Understand Unicode Escape / Unescape
El escapado Unicode reescribe los caracteres no ASCII como códigos \uXXXX para que el texto sobreviva a archivos, campos y sistemas que solo aceptan ASCII simple.
How it works
Cada carácter por encima del punto de código 127 se sustituye por una barra invertida, una u y su punto de código en hexadecimal, de modo que é (U+00E9) pasa a \u00E9. Los caracteres por encima de U+FFFF — los emojis y la mayoría de las escrituras históricas — no caben en cuatro dígitos hexadecimales, así que la herramienta emite la forma con llaves de ES2015, \u{1F30D}. Los caracteres ASCII se dejan tal cual estaban, lo que mantiene la salida legible y comparable en un diff.
When to use it
- Pegar texto no ASCII en un archivo .properties de Java o en un archivo fuente cuya codificación no controla.
- Averiguar qué carácter hay realmente en una cadena cuando dos caracteres casi idénticos — un guion y una raya, un espacio y un espacio de no separación — hacen fallar una comparación.
- Escribir un regex o un fixture de prueba donde un carácter invisible tiene que verse en la página.
- Enviar texto a un sistema heredado o a una columna de base de datos limitada a ASCII.
Watch out for
- La forma con llaves \u{1F30D} es JavaScript válido y JSON inválido. JSON exige el par subrogado \uD83C\uDF0D para el mismo carácter, así que un emoji escapado no puede pegarse directamente en un archivo .json.
- El escapado no cambia la cadena, solo cómo se escribe. Dos cadenas de aspecto idéntico pueden seguir siendo distintas — é es o bien un único punto de código (U+00E9) o bien una e seguida de un acento combinante (U+0065 U+0301) — y el escapado es la manera de ver cuál tiene.
- \uXXXX, \xXX y %XX son tres cosas distintas: un punto de código, un byte y un escape de URL. Mezclarlos es una causa habitual de mojibake.
Frequently Asked Questions
¿Qué son las secuencias de escape Unicode?
Los escapes Unicode representan caracteres mediante su punto de código: \u0041 = "A", \u1F600 = 😀. Aparecen en literales de cadena de JavaScript, archivos JSON, ficheros .properties de Java y valores content de CSS para representar cualquier carácter en código fuente ASCII.
¿Cuál es la diferencia entre \u y \u{}?
\uXXXX (4 dígitos hexadecimales) cubre el Plano Multilingüe Básico (U+0000–U+FFFF). Los caracteres por encima de U+FFFF (emojis, símbolos raros) necesitan pares subrogados (dos secuencias \uXXXX) o el escape extendido moderno \u{XXXXXX}, admitido desde ES2015.
¿Dónde aparecen los escapes Unicode en el código real?
Se usan escapes en patrones regex (\u0041), archivos .properties de Java, cargas JSON dirigidas a sistemas solo-ASCII, campos de base de datos con juego de caracteres restringido y al incrustar texto en archivos fuente cuyo IDE no admite caracteres no ASCII.
How to Use Unicode Escape / Unescape
- Paste or type your input in the input area above.
- The tool processes your input automatically or click Run.
- Copy or download the result using the action buttons.
- Use Ctrl+Enter to run quickly from the keyboard.