#470 · Herramienta para desarrolladores

Unicode Normalization Comparator

Compara las cuatro formas estándar de normalización Unicode de una cadena: NFC, NFD, NFKC y NFKD. Muestra el texto resultante, sus puntos de código, el número de bytes UTF-8 y si cada forma coincide exactamente con la entrada, lo que ayuda a detectar diferencias invisibles en búsquedas y claves.

Datos de entrada

Texto Unicode
Espacio publicitario

Cómo usar esta herramienta para desarrolladores

  1. Pega o escribe la entrada en el cuadro principal.
  2. Ajusta las opciones disponibles para este analizador.
  3. Pulsa el botón principal o usa Ctrl/Cmd + Enter.
  4. Revisa el resumen, la interpretación y las métricas.
  5. Copia o descarga el resultado si coincide con lo que necesitas.

Qué hace esta herramienta para desarrolladores

Compara las cuatro formas estándar de normalización Unicode de una cadena: NFC, NFD, NFKC y NFKD. Muestra el texto resultante, sus puntos de código, el número de bytes UTF-8 y si cada forma coincide exactamente con la entrada, lo que ayuda a detectar diferencias invisibles en búsquedas y claves.

String.prototype.normalize genera NFC, NFD, NFKC y NFKD. Después se comparan cadenas por igualdad exacta y se calculan puntos de código y bytes UTF-8.

La normalización no sustituye reglas de colación, case folding ni políticas de seguridad para identificadores. NFKC/NFKD pueden transformar caracteres de compatibilidad.

Ejemplo

Entrada: e + U+0301 NFC: é (U+00E9) NFD: e + U+0301

Casos de uso

  • Detectar claves que parecen iguales pero tienen composición distinta.
  • Preparar texto antes de comparar identificadores bajo una política definida.
  • Entender el efecto de NFKC sobre caracteres de compatibilidad.

Consejos para obtener resultados fiables

  • Prueba primero con un ejemplo pequeño que conozcas.
  • Conserva una copia de la entrada original antes de transformar datos.
  • Revisa errores y limitaciones antes de usar el resultado en producción.
  • Cuando haya Unicode, compara también bytes o puntos de código si el problema no es visible.
  • Valida el resultado en el entorno final cuando intervengan reglas específicas del proyecto.

Detalles del procesamiento

String.prototype.normalize genera NFC, NFD, NFKC y NFKD. Después se comparan cadenas por igualdad exacta y se calculan puntos de código y bytes UTF-8.

La normalización no sustituye reglas de colación, case folding ni políticas de seguridad para identificadores. NFKC/NFKD pueden transformar caracteres de compatibilidad.

Preguntas frecuentes

¿Cuál es la diferencia práctica entre NFC y NFD?

NFC tiende a componer secuencias cuando existe una forma precompuesta; NFD las descompone según equivalencia canónica.

¿Cuándo puede NFKC cambiar más que NFC?

NFKC aplica equivalencias de compatibilidad, por ejemplo a ciertos caracteres de ancho completo o símbolos compatibles.

¿Dos cadenas que se ven iguales pueden tener puntos de código distintos?

Sí. Un carácter acentuado puede aparecer precompuesto o como letra más marca combinante.

¿Normalizar Unicode basta para comparar nombres de usuario de forma segura?

No. También pueden ser necesarias reglas de mayúsculas, confusables, script permitido y una política específica de identificadores.

¿La herramienta modifica la entrada original al comparar las formas?

No. Conserva la cadena original y genera copias normalizadas para cada una de las cuatro formas.

Resumen técnico

MóduloDetalle
EntradaTexto Unicode
ProcesamientoString.prototype.normalize genera NFC, NFD, NFKC y NFKD. Después se comparan cadenas por igualdad exacta y se calculan puntos de código y bytes UTF-8.
SalidaFormas Unicode

Explorar Codificación y decodificación

Consulta más utilidades de esta categoría en el hub de Codificación y decodificación.