Quitar caracteres invisibles
Detecta y quita caracteres invisibles online: espacios de ancho cero, espacios de no separación, guiones blandos y controles bidi (Trojan Source).
Caracteres invisibles encontrados
| Punto de código | Abreviatura | Nombre | Tipo | Cantidad | Eliminado |
|---|
Entrada resaltada
Solo se resaltan los primeros 20 000 caracteres.
Cómo quitar los caracteres invisibles
- Pega tu texto en el cuadro de entrada. Se analiza en cuanto lo pegas.
- Lee el resultado: una tabla lista cada carácter oculto encontrado, con su punto de código, su abreviatura, su nombre Unicode, su tipo y su cantidad. La Entrada resaltada muestra dónde está cada uno, como una pequeña etiqueta de color, por ejemplo
ZWSPoNBSP. - En Caracteres que se eliminan, deja marcados los tipos que quieres borrar. Seleccionar todos / ninguno los activa o desactiva todos a la vez.
- Deja marcada la opción Sustituir los espacios de no separación y especiales por un espacio normal para que «10 000» conserve su espacio en lugar de convertirse en «10000».
- Copia el texto limpio del cuadro de resultado. Quitar caracteres invisibles actualiza el resultado.
Qué detecta esta herramienta
| Tipo | Caracteres | De dónde vienen |
|---|---|---|
| Caracteres de ancho cero | ZWSP U+200B, ZWNJ U+200C, ZWJ U+200D, WJ U+2060, BOM U+FEFF | Páginas web, procesadores de texto, texto copiado de PDF o de apps de chat, archivos guardados con marca de orden de bytes |
| Espacios de no separación y especiales | NBSP U+00A0, NBSP fino U+202F, espacios finos, de eme, de ene, de cifra e ideográficos, separadores de línea y de párrafo | de HTML, tipografía francesa, Word, Opción+Espacio en macOS |
| Guiones blandos | SHY U+00AD | Indicaciones de partición de palabras de procesadores de texto y sitios web |
| Controles bidireccionales | LRM, RLM, ALM, LRE–RLO (U+202A–U+202E), LRI–PDI (U+2066–U+2069) | Textos que mezclan árabe, hebreo y alfabeto latino, y código malicioso |
| Caracteres de control | NUL, ESC, salto de página, DEL, controles C1 | Salidas de terminal, archivos antiguos, codificaciones rotas |
| Otros caracteres de formato | Caracteres de etiqueta, operadores matemáticos invisibles, rellenos hangul, braille en blanco y cualquier otro carácter Unicode «Cf» | Marcas de agua ocultas, nombres de usuario «en blanco», fuentes poco comunes |
| Selectores de variación | VS1–VS256 | Estilos de emoji, variantes CJK y un truco de esteganografía que oculta datos después de un emoji |
Las tabulaciones, los saltos de línea y los retornos de carro son caracteres normales y nunca se tocan. Los selectores de variación no están seleccionados por defecto porque suelen ser legítimos.
Por qué los caracteres invisibles dan problemas
Parecen no ser nada, pero los ordenadores sí los ven. Un espacio de ancho cero dentro de una palabra estropea la búsqueda y el corrector ortográfico, una marca de orden de bytes al principio de un archivo CSV corrompe el nombre de la primera columna, un espacio de no separación hace que dos valores no coincidan en una búsqueda de una hoja de cálculo o en un campo de contraseña, y un guion blando puede partir una URL. Un código que contenga un U+FEFF o un U+00A0 perdido puede negarse a compilar con un error desconcertante.
Los caracteres invisibles también pueden ser intencionados: algunos se usan para marcar los textos copiados, de modo que una filtración pueda rastrearse hasta su origen.
Trojan Source y los controles bidi
Los controles bidireccionales le dicen al motor de visualización que coloque parte de una línea de derecha a izquierda. Dentro del código fuente pueden hacer que el código se vea distinto de lo que el compilador ejecuta en realidad, un ataque publicado en 2021 con el nombre de «Trojan Source» (CVE-2021-42574). Cuando la herramienta encuentra uno, muestra una advertencia. Un texto legítimo en árabe o en hebreo puede usar las marcas LRM y RLM, pero los controles de incrustación, anulación y aislamiento dentro de código o de un archivo de configuración son una señal de alarma.
Conserva lo que necesitas
- Conservar las uniones y los selectores dentro de los emojis (👨👩👧, ❤️) protege las uniones de ancho cero y los selectores de variación que forman emojis como 👨👩👧 o ❤️. Desmárcala para quitarlos también; el emoji de la familia se convierte entonces en tres personas separadas.
- El persa, el hindi y otras escrituras usan ZWNJ y ZWJ para controlar cómo se unen las letras. Para esos textos, desmarca Caracteres de ancho cero (ZWSP, ZWNJ, ZWJ, WJ, BOM).
- La tipografía francesa usa espacios finos de no separación antes de ; : ! ? y dentro de las comillas « ». Desmarca el tipo de los espacios para conservarlos.
Preguntas frecuentes
¿Cómo sé si mi texto contiene espacios de ancho cero?
Pégalo aquí. Si la tabla sigue vacía y el estado indica «No se han encontrado caracteres invisibles.», no hay ninguno.
¿Al quitar los espacios de no separación se juntarán mis palabras?
No con la configuración por defecto: los espacios de no separación y especiales se sustituyen por un espacio normal. Desmarca la opción de sustitución solo si quieres borrarlos.
¿La herramienta quita los espacios normales, las tabulaciones o los saltos de línea?
No. Solo se ven afectados los tipos de caracteres de la lista anterior.
¿Es seguro pegar un texto confidencial?
Sí. El análisis y la limpieza se hacen en tu navegador; no se sube ni se guarda nada.
¿Por qué mi archivo limpio sigue mostrando un carácter raro al principio?
Si el archivo se guardó en una codificación distinta de UTF-8, el problema puede ser la codificación y no un carácter invisible. Vuelve a guardar el archivo en UTF-8 y analízalo de nuevo.
Herramientas relacionadas
- Quitar saltos de línea y espacios sobrantes Quita los saltos de línea y los espacios sobrantes de un texto copiado de un PDF o de un correo. Conserva párrafos y listas y une palabras cortadas.
- Buscar y reemplazar Busca y reemplaza palabras o patrones en cualquier texto, con opciones de mayúsculas, palabras completas y expresiones regulares, recuento y vista previa.
- Corrector de tipografía francesa Corrige la puntuación de textos en francés: espacios de no separación antes de : ; ! ?, comillas « », puntos suspensivos y apóstrofos tipográficos.
- Contador de caracteres Contador de caracteres gratis con límites en vivo para X, SMS, meta title, meta description y pies de foto de Instagram. Cada emoji cuenta como uno.