Rust:
Інтерполяція рядків
Як це зробити:
fn main() {
let name = "Василь";
let age = 30;
println!("Моє ім'я {} і мені {} років.", name, age);
// Об'єктно-орієнтований спосіб за допомогою форматування
let greeting = format!("Привіт, {}!", name);
println!("{}", greeting);
// Вивід:
// Моє ім'я Василь і мені 30 років.
// Привіт, Василь!
}
Поглиблений розгляд
Історично, Rust розвивав свої можливості вставки з метою простоти та безпеки. Шаблони для форматування стрічок дуже схожі на ті, що використовуються в мовах програмування на кшталт Python.
Іншими варіантами вставки в Rust є макроси write!
та writeln!
, які дозволяють форматувати текст зі збереженням в буфері або запису у файл. Оскільки Rust прагне до безпеки пам’яті, всі стрічки перевіряються на етапі компіляції, забезпечується обробка помилок форматування.
Ще одна особливість полягає в тому, що форматування стрічок в Rust підтримує велику кількість специфікаторів, які дозволяють контролювати вигляд вставленої інформації з точністю до символу.