Unicode Normalize
v0.1.0Adicionado em 26 de set. de 2026Dados de exemploLimpeza Unicode para pipelines de texto: normalização NFC/NFKC, unificação de espaços e remoção de caracteres invisíveis.
cargo install kura-rs
kura add unicode-normalizeCopia o arquivo de código-fonte para o seu projeto. A partir daí, o código é seu.
Se outra ferramenta já instala um comando kura, execute cargo install kura-rs --bin kura-rs e use kura-rs add no lugar.
use crate::parts::unicode_normalize::{normalize, Options};
let clean = normalize(&raw, Options::nfkc().fold_whitespace().strip_invisible());Verificação
Dados de exemploVerificado com unicodedata 3.12 (Python). Método: Teste baseado em propriedades. As mesmas entradas são enviadas às duas implementações e as saídas são comparadas.
Estes números são provisórios. Eles ainda não foram medidos e não devem ser lidos como resultados reais. Esta peça está marcada como "sample": true no seu arquivo do registry.
Benchmarks
Dados de exemplokura-rs (Rust) comparado com unicodedata em vários tamanhos de entrada. Mais rápido a partir de cerca de 143 entradas, até 2.2× mais rápido.
Estes números são provisórios. Eles ainda não foram medidos e não devem ser lidos como resultados reais. Esta peça está marcada como "sample": true no seu arquivo do registry.
Mostrar tabela de dados
| Tamanho da entrada | kura-rs (Rust) | unicodedata | Aceleração |
|---|---|---|---|
| 10 | 0,01 ms | 0 ms | 3.0× mais lento |
| 100 | 0,02 ms | 0,02 ms | 1.1× mais lento |
| 1.000 | 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× |
Arquivos
- parts/unicode_normalize/mod.rs