Unicode Normalize
v0.1.0Hinzugefügt am 26. Sept. 2026BeispieldatenUnicode-Bereinigung für Text-Pipelines: NFC/NFKC-Normalisierung, Zusammenfassen von Leerraum und Entfernen unsichtbarer Zeichen.
cargo install kura-rs
kura add unicode-normalizeKopiert die Quelldatei in dein Projekt. Ab dann gehört der Code dir.
Wenn ein anderes Tool bereits einen kura-Befehl installiert, führe cargo install kura-rs --bin kura-rs aus und nutze stattdessen kura-rs add.
use crate::parts::unicode_normalize::{normalize, Options};
let clean = normalize(&raw, Options::nfkc().fold_whitespace().strip_invisible());Verifikation
BeispieldatenGeprüft gegen unicodedata 3.12 (Python). Verfahren: Property-based Testing. Beide Implementierungen erhalten dieselben Eingaben, die Ausgaben werden verglichen.
Diese Werte sind Platzhalter. Sie wurden noch nicht gemessen und dürfen nicht als echte Ergebnisse gelesen werden. Dieser Baustein ist in seiner Registry-Datei mit "sample": true markiert.
Benchmarks
Beispieldatenkura-rs (Rust) im Vergleich zu unicodedata über verschiedene Eingabegrößen. Schneller ab etwa 143 Eingaben, bis zu 2.2× schneller.
Diese Werte sind Platzhalter. Sie wurden noch nicht gemessen und dürfen nicht als echte Ergebnisse gelesen werden. Dieser Baustein ist in seiner Registry-Datei mit "sample": true markiert.
Datentabelle anzeigen
| Eingabegröße | kura-rs (Rust) | unicodedata | Speedup |
|---|---|---|---|
| 10 | 0,01 ms | 0 ms | 3.0× langsamer |
| 100 | 0,02 ms | 0,02 ms | 1.1× langsamer |
| 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× |
Dateien
- parts/unicode_normalize/mod.rs