Limpiador de Unicode
“Limpiador de Unicode” se utiliza para tres tareas diferentes: normalizar las letras acentuadas, transliterarlas a ASCII simple y eliminar los caracteres de formato invisibles. Sin embargo, una herramienta que afirma realizar las tres tareas suele no hacerlo de manera fiable. Esta herramienta solo realiza la tercera tarea: elimina los caracteres de formato y los caracteres reservados invisibles que solo generan ruido, deja intactos los que aún cumplen una función ortográfica y mantiene cada carácter visible, acentuado o no, exactamente como lo escribiste, salvo una excepción opcional que se describe a continuación.
Relacionado: De letra manuscrita a fuente: generador gratuito de fuentes manuscritas.
Última actualización: septiembre de 2026
La limpieza ocurre en tu navegador: ese texto nunca sale de esta página, y no hay subida, ni cuenta, ni límite. Reescribir es la excepción: en este caso, el texto se envía a nuestro servidor.
Tres trabajos llamados "limpiador Unicode"
- Normalización (NFC / NFD / NFKC). Algunas letras acentuadas se pueden codificar de dos
maneras: un solo punto de código para "é", o una "e" más un acento combinante independiente que se ve
idéntico en pantalla. Normalizar elige una forma consistente. Esta herramienta no hace eso;
la biblioteca estándar de tu lenguaje casi seguro ya tiene una función de una línea para eso (
str .normalize()tanto en JavaScript como en Python). - Transliteración / conversión a formato ASCII. Convierte las letras “é” en “e” o el símbolo “™” en “(tm)”. Además, esta herramienta no está diseñada para eso, y con razón: se trata de una modificación que implica pérdida de información, y las sustituciones “correctas” dependen totalmente de tu proyecto, no de lo que pueda adivinar una simple herramienta en línea.
- Eliminar caracteres de formato invisibles. Caracteres que no tienen forma visible, como espacios de ancho cero, caracteres de unión, marcas direccionales, caracteres de etiqueta Unicode y el bloque de uso privado. Esta herramienta se encarga de estos caracteres y nada más.
Lo que las categorías implicadas realmente significan
Unicode agrupa todos los caracteres en categorías, y las que son relevantes aquí vale la pena conocerlas por su nombre si trabajas con texto de forma programática:
- Cf: Formato. Caracteres que influyen en la forma en que se procesa o se muestra el texto, pero que no tienen un glifo propio: conectores de ancho cero, marcas direccionales, operadores matemáticos invisibles. Esta es la mayor parte de lo que elimina esta herramienta de limpieza.
- Co: Uso privado. Un bloque que Unicode deja deliberadamente sin definir para permitir el uso de fuentes e iconos personalizados. Al no tener un significado universal, se muestra como un cuadro vacío o un símbolo aleatorio en cualquier dispositivo que no tenga la fuente específica para la que fue diseñado; esta herramienta elimina también ese bloque.
- Cs: Sustituto. Puntos de código que solo tienen sentido en pares dentro de la codificación UTF-16. La aparición de un punto de código aislado en un texto normal suele indicar que en algún punto del proceso de codificación/decodificación se produjo un error, un fallo diferente y menos común que el problema de los fragmentos de texto pegados, y no es algo a lo que esta herramienta se dirija específicamente.
Un ejemplo corto y concreto
Copia una respuesta breve de una ventana de chat en la consola de JavaScript y comprueba su longitud comparándola con el número de caracteres que esperarías contar en la pantalla:
"hello".length devuelve 6, no 5, aunque al imprimir aparece como "hello" y no se aprecia ninguna diferencia. El carácter adicional es un espacio de ancho cero (U+200B) que se incluyó al copiar y pegar el texto. Al procesar el mismo texto con esta herramienta de limpieza, la longitud vuelve a ser de 5, sin que se modifique ningún otro aspecto de la cadena.
El único cambio visible que hace
La casilla de verificación que aparece encima del cuadro es la excepción a la opción “solo invisible”: actívala y las comillas tipográficas, los guiones largos y los guiones medios se transformarán en un apóstrofo simple, una comilla recta o un guion. Estos son caracteres visibles, por lo que la herramienta considera que cambiar estos caracteres es opcional; por defecto, esta opción está activada, pero el cuadro está ahí mismo si prefieres conservar la puntuación original.
Preguntas
¿Esto normaliza Unicode (NFC/NFKC)?
No. La normalización elige una codificación consistente para caracteres que pueden ser representados más de una manera, y ese es un trabajo para la función normalize() integrada de tu lenguaje de programación, no para un cuadro de pegado: hacerlo mal puede ser peor que no hacerlo.
¿Esto convierte letras acentuadas a simple ASCII?
No, y no es por casualidad. Las letras con acento, como la é, la ñ y la ü, y cualquier otra que copies y pegues, se mostrarán exactamente como las escribiste. Transliterarlas sería una opción deliberada que implica una pérdida de información y que debería aplicarse en el código que controlas, no en una herramienta de limpieza general.
¿Cuáles son las categorías Unicode Cf, Cs y Co?
Cf es Formato: caracteres invisibles que afectan al procesamiento, como los unidores de ancho cero y las marcas direccionales. Co es Uso Privado: un bloque reservado para fuentes personalizadas sin un significado universal. Cs es Sustituto: puntos de código válidos únicamente en pares UTF-16. La función de este limpiador es principalmente Cf, además del bloque de uso privado.
¿Por qué aparece un carácter sustituto aislado en un texto normal?
Normalmente, esto ocurre porque, en algún momento del proceso, un programa convirtió incorrectamente entre diferentes codificaciones de texto y dejó la mitad de un par de caracteres sustitutos. Este es un problema diferente, menos común, que el que se soluciona con esta herramienta, y vale la pena revisar por separado la cadena de codificación que utilizas.
¿Es seguro utilizar esta herramienta con el código fuente, y no solo con texto?
Solo afecta a los caracteres que no tienen una forma visible, por lo que la lógica del código no debería cambiar, pero trata cualquier operación masiva de texto en el código como tratarías cualquier otra edición: mantenla bajo control de versiones para poder comparar el resultado antes de confiar en él.
¿Qué se entiende por "caracteres Unicode invisibles"?
Los caracteres Unicode invisibles son puntos de código que la norma define sin ningún glifo visible, principalmente la categoría Cf (Formato) mencionada anteriormente, además de algunos otros que se encuentran fuera de ella, como el bloque de uso privado. No ocupan espacio y no se muestran en la pantalla, y precisamente por eso una búsqueda y reemplazo o una revisión ortográfica normal no los detectan. La función principal de esta herramienta de limpieza es encontrar y eliminar los caracteres que son simplemente restos de formato, dejando intactos aquellos que aún cumplen una función real, como un conector que une un emoji o uno que forma parte de la ortografía persa.
Lo que esta herramienta no puede eliminar
Existen dos conceptos distintos a los que la gente se refiere como una "marca de agua de IA".
- Caracteres invisibles y tipográficos. Esta herramienta elimina caracteres que no llevan ningún glifo visible en absoluto, según define el estándar Unicode , no un número que inventamos. También convierte variantes de espacio diferentes, incluyendo el espacio estrecho sin ruptura, en un espacio ordinario. Las comillas curvas y los guiones pasan por un paso separado y opcional, los reemplazos tipográficos están activados por defecto; desactiva esa opción y se quedan exactamente como los escribiste. También borra los tres rangos de uso privado de Unicode, incluido el rango de etiquetas U+E0000-U+E007F, que se utiliza para ocultar datos en texto sin formato. Estos rangos no contienen caracteres estándar propios, por lo que los describimos en lugar de presentarlos como un recuento de caracteres.
- Una marca de agua estadística presente en la selección de palabras. SynthID de Google, que según Google ha marcado el texto en la aplicación Gemini y en la web desde mayo de 2024, orienta qué palabras se seleccionan y no añade ningún carácter, por lo que ningún limpiador de caracteres, incluido el nuestro, tiene nada que detectar. Anthropic dice que el texto de sus modelos Claude más recientes (lanzados el 2 de agosto de 2026 o después) lleva una marca de agua estadística aplicada mientras el modelo elige sus palabras, sin que se añada nada al texto (anthropic.com), así que ningún limpiador de caracteres lo toca. OpenAI anunció uno para ChatGPT en octubre de 2026 (según informó la prensa) que también es estadístico, comenzando en la UE.
Si una herramienta promete eliminar "la marca de agua de IA" sin hacer esta distinción, está describiendo lo primero mientras te deja creer que hace lo segundo.
Herramientas relacionadas
Hay una única herramienta que se utiliza en todas estas páginas: los mismos caracteres, el mismo botón. Lo único que cambia es la explicación que aparece, así que elige la que mejor se adapte a tu problema.
- Texto limpio, la herramienta principal, con la lista completa de todo lo que elimina.
- Caracteres ocultos, la versión de esta misma página en la que se priorizan los síntomas.
- Caracteres invisibles, la lista completa de referencias de los elementos que se eliminarán.
- Eliminador de caracteres especiales, para la parte de los “caracteres especiales” que se muestra visualmente.
- Eliminador de texto AI, qué significa realmente "eliminar la IA del texto" y qué acciones sí y qué acciones no lo consiguen.
- Generador de fuentes, para cuando quieras modificar el aspecto de tu texto, sin eliminar nada.
- Precios, lo que sigue siendo gratis y lo que añade un pase, y quién construye esto.
Por Sam Ridder, Construyo y ejecuto TextNinja en mi propio hardware, por mi cuenta. Quién soy.