Rust:
Finn lengden på en streng
Hvordan gjøre det:
fn main() {
let tekst = "Hei, Norge!";
let lengde = tekst.chars().count();
println!("Lengden av '{}' er {}", tekst, lengde);
}
Output:
Lengden av 'Hei, Norge!' er 11
Dypdykk
Helt fra Rusts tidlige dager var det å finne lengden på en streng ikke alltid så rett fram. Rusts String
type er kodet i UTF-8, noe som gjør .len()
metoden mindre intuitiv; den returnerer antall bytes, ikke antall tegn. Derfor bruker vi .chars().count()
for å få det faktiske antall tegn. Et alternativ er .bytes().count()
om man heller vil ha antall bytes, eller .graphemes(true).count()
(fra unicode-segmentation
craten) for å få antall grafemer, som kan være nyttig ved mer kompleks tekstbehandling.
Se også
- Rust dokumentasjonen for strenger: https://doc.rust-lang.org/std/string/
unicode-segmentation
crate for å håndtere grafemer: https://crates.io/crates/unicode-segmentation