Herramienta de escape y desescape
Escapa o desescapa texto para HTML, XML, JSON, JavaScript, CSV y URL, localmente en tu navegador.
Cargando Herramienta de escape y desescape… Si no ocurre nada, activa JavaScript.
El escapado es el acto de reescribir caracteres que tienen un significado especial en un formato determinado para que se traten como datos normales en lugar de como sintaxis. Esta herramienta escapa y desescapa texto para seis contextos comunes: HTML, XML, cadenas JSON, cadenas JavaScript, campos CSV y URL. Elige el contexto, escoge escapar o desescapar, y el resultado se actualiza mientras escribes.
Preguntas frecuentes
¿Cuál es la diferencia entre el escapado de HTML y de XML aquí?
¿Por qué el escapado de cadenas JSON y JavaScript parece igual?
¿Cómo funciona el escapado CSV?
¿El modo URL codifica toda la URL o solo un componente?
¿Es el escapado lo mismo que el cifrado?
¿Se sube mi entrada a algún sitio?
Acerca de Herramienta de escape y desescape
La razón por la que esto importa es la seguridad y la corrección. Poner un corchete angular sin escapar en HTML puede romper la página o abrir un agujero de cross-site scripting; una comilla sin escapar dentro de una cadena JSON hace que todo el documento no se analice; una coma en un campo CSV desplaza todas las columnas posteriores. Cada formato tiene sus propias reglas: HTML y XML usan entidades como < y &, JSON y JavaScript usan secuencias con barra invertida como \" y \n, CSV envuelve un campo entre comillas dobles y duplica cualquier comilla interior, y las URL codifican en porcentaje los caracteres reservados en formas como %20.
Todo se ejecuta localmente en tu navegador, así que puedes pegar cargas útiles de API, fragmentos y datos exportados sin que salgan de tu dispositivo. Las direcciones de escape y desescape son inversas exactas para una entrada bien formada, y un botón 'Usar la salida como entrada' te permite encadenar o revertir una transformación con un solo clic.
El carácter de escape
La idea de un 'carácter de escape', un símbolo que cambia el significado del siguiente, es lo bastante antigua como para anteceder a la informática moderna. El código de control ASCII 27, que la tecla Escape todavía envía, lo usaban los terminales para introducir secuencias de control, y el lenguaje C adoptó la barra invertida a principios de la década de 1970 para incrustar comillas y saltos de línea dentro de literales de cadena. Esa convención de la barra invertida se extendió a casi todos los lenguajes que vinieron después, por lo que el escapado de JSON y JavaScript resulta tan familiar.
La web añadió su propia capa. HTML heredó las entidades con ampersand de SGML para que los autores pudieran escribir un signo de menor que literal sin iniciar una etiqueta, y la codificación porcentual de URL se definió para que las direcciones pudieran viajar de forma segura por sistemas que solo entendían un conjunto limitado de caracteres ASCII. Cada esquema resuelve el mismo problema subyacente con un disfraz distinto: cómo decir 'trata este carácter como datos, no como instrucción'.