Rust:
Interpolera en sträng
Hur man gör:
fn main() {
let name = "Världen";
println!("Hej, {}!", name); // Standard interpolering
let age = 28;
println!("Du är {} år gammal.", age); // Siffror fungerar också
}
Utskrift:
Hej, Världen!
Du är 28 år gammal.
Djupdykning:
I många språk görs stränginterpolering med specialtecken som {}
eller ${}
. I Rust använder vi {}
och format-makrot för detta. Historiskt sett hade man kanske använt format-specifikatorer som i språket C. Alternativ till println!
kan vara att använda format!
för att spara den formaterade strängen i en variabel, eller write!
för att skriva till en mätare. Denna interpolationsmetod är typsäker, vilket innebär att Rust-kompilatorn kommer att säkerställa att data som är inbäddade i strängar är av rätt typ, och detta sker vid kompilering snarare än vid körning.
Se även:
- Rusts officiella dokumentation om “format strings”: https://doc.rust-lang.org/std/fmt/
println!
makrodetaljer: https://doc.rust-lang.org/std/macro.println.html- Översikt över Rusts “macros”: https://doc.rust-lang.org/book/ch19-06-macros.html