En esta guía
- Clasifica el síntoma antes de cambiar el texto
- Aprovecha la pista visual de los acentos rotos
- Reconoce la información perdida en lugar de adivinar
- Localiza una marca invisible por su código y su posición
- Distingue los espacios de los controles de formato ocultos
- Trata los unidores y las marcas direccionales como significativos hasta comprobarlo
- Normaliza los acentos equivalentes cuando las letras se ven bien
- Usa las formas de compatibilidad solo si se puede perder la distinción
- Distingue las referencias de entidad y los escapes de URL del mojibake
- Repite la misma preparación en los dos lados de una comparación
- Guarda un pequeño conjunto de pruebas y verifica el destino
- Compara la misma muestra en dos puntos del flujo de trabajo
Clasifica el síntoma antes de cambiar el texto
Hay tres motivos habituales por los que una etiqueta pegada no se comporta como parece. Los caracteres estropeados se ven: un nombre que debería llevar un acento puede mostrar una corta serie de letras y símbolos inesperados. Los caracteres invisibles están ahí pero no se notan: una marca de ancho cero puede esconderse entre letras, o un espacio de no separación puede parecer un espacio normal. Las diferencias de representación en Unicode son más sutiles: una letra con acento puede almacenarse como un único punto de código o como una letra base seguida de una marca combinante.
Cada problema pide una herramienta distinta. Reparar la codificación no elimina las marcas de ancho cero. Reemplazar espacios no compone un carácter acentuado. Normalizar Unicode no deshace una decodificación de bytes equivocada. Empieza con una copia corta del texto sospechoso y una versión que sepas que es correcta. Conserva las dos hasta que el resultado funcione en la aplicación donde apareció el problema. El objetivo es un valor verificado, no uno que solo parezca ordenado en la vista previa.
Aprovecha la pista visual de los acentos rotos
Cuando ves algo como café en lugar de café, la secuencia es una pista útil. Es posible que unos bytes escritos originalmente en UTF-8 se hayan leído con la interpretación de Windows-1252. Los caracteres resultantes son texto válido, pero representan una decodificación equivocada del original. El mismo error puede afectar a la puntuación: It’s puede ser una forma mal leída de It’s.
Prueba un ejemplo corto en Arreglar acentos rotos. Compara cada cambio propuesto con la ortografía esperada o con una fuente de confianza. La vista previa intenta revertir una familia concreta de conversiones equivocadas; no detecta ni traduce todas las codificaciones posibles. Si una secuencia se cambió varias veces, puede que una sola pasada no la restaure. Prueba primero una pasada. Haz otra solo si el resultado sigue mostrando un patrón reconocible y puedes verificar el texto esperado. No apliques la reparación solo porque un nombre contenga una letra que no reconoces.
Reconoce la información perdida en lugar de adivinar
El carácter de reemplazo � suele indicar que un decodificador no pudo interpretar algunos bytes. Cuando una copia contiene solo ese carácter de reemplazo, los bytes que faltan ya no están en el texto que pegaste. También puede que una exportación anterior haya insertado un signo de interrogación, aunque quizá sea simple puntuación. En ambos casos, adivinar a partir de un nombre o de una frase no es lo mismo que recuperar el original.
Busca el archivo original, una exportación nueva u otra copia hecha antes del error de decodificación. Si controlas la exportación, selecciona allí la codificación prevista y abre el resultado con la misma codificación. Compara un pequeño conjunto de nombres con acentos y de signos de puntuación tipográficos antes de sustituir una lista completa. Si no se puede recuperar el original, conserva la copia sin modificar y deja constancia de cualquier corrección manual. Esto es especialmente importante en nombres, identificadores y citas textuales. Codificar y decodificar una y otra vez el texto dañado no reconstruirá bytes que se descartaron en un paso anterior.
Localiza una marca invisible por su código y su posición
Cuando dos etiquetas se ven iguales pero solo una coincide, pega la sospechosa en el inspector. Activa Mostrar marcadores en el resultado y abre el informe de caracteres. En un valor como Factura[NBSP]042, el marcador entre corchetes representa un espacio de no separación. El informe incluye el código Unicode, un recuento y la primera posición de cada marca reconocida. Compara esa posición con el texto original para ver si la marca está entre palabras o dentro de un identificador.
Los marcadores son solo una visualización de diagnóstico. No son los caracteres que había en el texto y no deben pegarse en un destino que espera el valor original. Cuando hayas decidido qué conservar, desactiva los marcadores para copiar un resultado limpio. Si aparecen varios tipos de marca, prueba las opciones de limpieza de una en una. Así queda claro si una diferencia venía de los espacios, de un guion opcional o de un carácter que querías conservar.
Distingue los espacios de los controles de formato ocultos
Un espacio de no separación puede ser totalmente apropiado en una etiqueta visible, como un número seguido de su unidad. Mantiene juntas las piezas relacionadas cuando una línea se corta. Un espacio fino puede formar parte de una convención tipográfica. Una tabulación puede ser un separador de campos y no un hueco que haya que reducir. Comprueba qué espera el destino antes de tratar como defecto todo espacio fuera de lo habitual.
El inspector puede reemplazar ciertos espacios de no separación por espacios normales. Esto puede ayudar al pegar en un sistema que compara literalmente los valores de las etiquetas. No debe usarse de forma automática en una tipografía donde el comportamiento del salto de línea es intencionado. Si copias filas de una hoja de cálculo separadas por tabulaciones, conserva las tabulaciones y usa el convertidor CSV y TSV cuando necesites otro separador. No uses la limpieza de espacios para convertir una tabla. Reducir dos campos separados por tabulaciones a un solo hueco cambia la estructura, aunque la línea pegada siga pareciendo legible.
Trata los unidores y las marcas direccionales como significativos hasta comprobarlo
Algunas marcas afectan a cómo se combinan o se muestran los caracteres. Una unión de ancho cero puede formar parte de una secuencia de emojis o ser importante en un sistema de escritura. Una marca direccional puede influir en el orden en que aparece un texto con direcciones mixtas. El informe es útil porque distingue estos controles de un espacio de ancho cero. Que una marca esté presente no significa que sobre.
La opción de limpieza acotada de PasteCleanly para espacios de ancho cero, guiones blandos y caracteres BOM no quita las uniones ni las marcas direccionales que aparecen en su informe. Esa distinción importa al copiar nombres, mensajes con varios alfabetos o emojis. Si el problema aparece solo en una aplicación, compara lo que esa aplicación recibe de verdad. Evita reglas generales como «borrar todo carácter que no sea ASCII»: puede quitar parte de un nombre, partir una secuencia visible o cambiar cómo se lee una frase. Comprueba un ejemplo completo en el destino antes de aplicar un cambio amplio a todo un lote.
Normaliza los acentos equivalentes cuando las letras se ven bien
Dos cadenas con acentos que se ven idénticas pueden usar secuencias distintas. Por ejemplo, una letra acentuada puede almacenarse como un único punto de código o como una letra base seguida de un acento combinante. Una pantalla puede mostrar ambas igual mientras una comparación literal las trata de forma diferente. Es un buen caso para Normalizar Unicode, no para quitar acentos. La normalización conserva el acento y cambia solo su representación.
Si el sistema receptor lo permite, usa NFC tanto en la referencia como en el valor pegado antes de compararlos. NFC compone las secuencias canónicamente equivalentes cuando existe una forma compuesta. NFD sigue el enfoque contrario, el descompuesto. Si el destino especifica una forma, elige la que exija. Que ninguna de las dos herramientas muestre un cambio visible no demuestra que los puntos de código originales fueran idénticos. Comprueba la comparación después de aplicar la misma transformación a ambos lados, en lugar de fiarte de un vistazo.
Usa las formas de compatibilidad solo si se puede perder la distinción
NFKC y NFKD pueden hacer más que componer o descomponer acentos equivalentes. También pueden unificar caracteres de compatibilidad. Una forma de ancho completo, una ligadura o un superíndice pueden pasar a una representación más corriente. Eso puede ayudar cuando el destino trata expresamente esas distinciones como intercambiables. También puede cambiar lo que ve el lector o fusionar etiquetas que el documento original distingue a propósito.
Prueba una muestra antes de normalizar una tabla o un catálogo enteros. Incluye entradas con acentos, formas de ancho completo, puntuación y códigos que no deban tocarse. Si otro sistema asigna los identificadores, conserva sus valores exactos hasta saber cómo trata la normalización. Una etiqueta legible para personas suele poder limpiarse con independencia del identificador. Si el único problema son las comillas tipográficas o una raya, usa una opción de puntuación específica en lugar de una forma de compatibilidad. Las operaciones acotadas son más fáciles de explicar y de deshacer cuando el resultado no es el que esperabas.
Las letras decorativas de Unicode son otro caso distinto: pueden leerse bien pero no coincidir con la palabra normal en una búsqueda. Usa Restaurar letras normales en un extracto corto si usa alguno de los estilos admitidos, y compara el resultado con la ortografía prevista. Si el problema son espacios normales repetidos y no la representación de los caracteres, usa Limpiar espacios con solo la opción pertinente activada.
Distingue las referencias de entidad y los escapes de URL del mojibake
Un texto literal como é es una referencia de carácter, no un acento roto. Decodifícalo con el decodificador de entidades HTML cuando el destino necesite la letra visible. La misma idea vale para las referencias numéricas. Esto cambia la representación del texto; no interpreta el marcado pegado como si fuera una página. Si el resultado aún contiene otra referencia, míralo antes de decidir si haces otra pasada.
Un valor como Caf%C3%A9 es un ejemplo de codificación porcentual de URL. Elige en su lugar el decodificador de componentes de URL de Codificar y decodificar texto. Un signo más puede significar un más literal o un espacio según el formato. Si no estás seguro de qué representación tienes, compara con cómo la produjo el origen: un ejemplo HTML, un valor de consulta de una URL y un archivo de texto siguen reglas distintas. Ninguna de estas operaciones repara una selección a la que ya se le ha omitido o perdido texto.
Repite la misma preparación en los dos lados de una comparación
Si una comparación debe ignorar una diferencia concreta de representación, prepara las dos entradas de la misma manera. Inspecciona algunas etiquetas problemáticas de cada lista, decide si los espacios de no separación deben pasar a espacios normales y aplica NFC cuando importe la equivalencia canónica. Después pega las dos listas en Comparar listas. No normalices un lado y dejes el otro con una representación distinta, salvo que estés probando ese efecto a propósito.
Revisa el resultado antes de tratar como error cada discrepancia que quede. Puede que un valor sí difiera por la puntuación, por un dígito de más o por una ortografía distinta. Una herramienta para quitar duplicados debería mantener separados esos valores, salvo que tu caso de uso indique lo contrario. Si las reglas de coincidencia deben ser estrictas, guarda las columnas originales y escribe los valores normalizados en columnas nuevas de tu destino. Así queda constancia de qué cambios hicieron posible una coincidencia y evitas sustituir en silencio la forma oficial de un registro.
Abre el inspector para una última comprobación de la comparación
Guarda un pequeño conjunto de pruebas y verifica el destino
Para una importación recurrente, prepara un conjunto breve de pruebas con un acento correcto conocido, un acento claramente dañado, un espacio de no separación, un acento descompuesto y una secuencia que use a propósito un unidor. Anota el resultado esperado de cada uno. Ejecuta la misma serie de pasos con estos ejemplos cuando cambies el origen, la aplicación de destino o una opción de limpieza. Comprueba tanto lo que cambió como lo que quedó intacto.
Por último, pega el ejemplo limpio en el destino real y repite la búsqueda, la comparación o la importación original. Una vista previa puede mostrar bien los caracteres sin demostrar que otra aplicación los compare de la misma manera. Si sigue fallando, conserva los valores de antes y de después y revisa la codificación y las reglas de coincidencia que espera el destino. Usa la corrección más pequeña que haga funcionar el ejemplo documentado. Si un valor debe seguir idéntico byte a byte, es preferible inspeccionarlo antes que cambiarlo, y resolver la discrepancia en el sistema que lo gestiona.
Compara la misma muestra en dos puntos del flujo de trabajo
Cuando el mismo problema se repite, captura el texto justo antes y justo después del paso que lo cambia. Por ejemplo, compara un nombre con acento en la aplicación que gestiona el registro con ese mismo nombre después de descargar y abrir una exportación. Luego compara lo que aparece tras copiarlo en el destino. El primer punto en que las cadenas difieren te dice más que otra suposición sobre el resultado final. Si puedes exportar un registro pequeño con nombres inventados, úsalo para investigar sin incluir datos de clientes.
Mantén la muestra pequeña pero variada. Usa un carácter con acento, un apóstrofo tipográfico y una palabra sin marcas especiales. Añade un nombre de un alfabeto no latino si el flujo de trabajo lo admite. Si solo cambia la letra acentuada, el problema puede estar en un paso de conversión. Si los acentos se ven intactos pero la búsqueda deja de encontrarlos, compara los puntos de código reales: las versiones compuesta y descompuesta pueden verse idénticas. Si todos los caracteres especiales se convirtieron en signos de interrogación, puede que los valores originales ya no se puedan recuperar de esa copia.
Cuando encuentres el primer paso en que difieren, cambia allí la configuración de la exportación o de la importación si la controlas. Anota junto a la muestra la codificación o la forma Unicode esperadas. Así, una exportación futura podrá contrastarse con la misma referencia, en lugar de depender de una reparación manual tras cada importación.