Unicode Normalize

v0.1.0Añadido el 26 sept 2026Datos de ejemplo

Limpieza Unicode para flujos de texto: normalización NFC/NFKC, unificación de espacios y eliminación de caracteres invisibles.

cargo install kura-rs
kura add unicode-normalize

Copia el archivo de código fuente en tu proyecto. A partir de ahí, el código es tuyo.

Si otra herramienta ya instala un comando kura, ejecuta cargo install kura-rs --bin kura-rs y usa kura-rs add en su lugar.

use crate::parts::unicode_normalize::{normalize, Options};

let clean = normalize(&raw, Options::nfkc().fold_whitespace().strip_invisible());

Verificación

Datos de ejemplo

Verificado frente a unicodedata 3.12 (Python). Método: Pruebas basadas en propiedades. Las mismas entradas se pasan a ambas implementaciones y se comparan las salidas.

Referencia
unicodedata
Python 3.12
Casos de prueba
10.000
Pruebas basadas en propiedades
Superados
10.000 / 10.000
Todos los casos coinciden
Última ejecución
26 sept 2026
UTC

Estas cifras son provisionales. Todavía no se han medido y no deben interpretarse como resultados reales. Esta pieza está marcada con "sample": true en su archivo del registro.

Benchmarks

Datos de ejemplo

kura-rs (Rust) frente a unicodedata con distintos tamaños de entrada. Más rápido a partir de unas 143 entradas, hasta 2.2× más rápido.

Estas cifras son provisionales. Todavía no se han medido y no deben interpretarse como resultados reales. Esta pieza está marcada con "sample": true en su archivo del registro.

kura-rs (Rust)unicodedata
Tiempo real por ejecución (menos es mejor). La zona sombreada indica dónde la implementación de referencia es más rápida.
Mostrar tabla de datos
Tamaño de entradakura-rs (Rust)unicodedataAceleración
100,01 ms0 ms3.0× más lento
1000,02 ms0,02 ms1.1× más lento
10000,09 ms0,16 ms1.8×
10.0000,8 ms1,7 ms2.1×
100.0007,9 ms17 ms2.2×
1.000.00078 ms172 ms2.2×

Archivos

  • parts/unicode_normalize/mod.rs

Dependencias (crates)