Unicode Normalize
v0.1.0Añadido el 26 sept 2026Datos de ejemploLimpieza 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-normalizeCopia 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 ejemploVerificado 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.
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 ejemplokura-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.
Mostrar tabla de datos
| Tamaño de entrada | kura-rs (Rust) | unicodedata | Aceleración |
|---|---|---|---|
| 10 | 0,01 ms | 0 ms | 3.0× más lento |
| 100 | 0,02 ms | 0,02 ms | 1.1× más lento |
| 1000 | 0,09 ms | 0,16 ms | 1.8× |
| 10.000 | 0,8 ms | 1,7 ms | 2.1× |
| 100.000 | 7,9 ms | 17 ms | 2.2× |
| 1.000.000 | 78 ms | 172 ms | 2.2× |
Archivos
- parts/unicode_normalize/mod.rs