Макрос format!
Макрос format! формирует и возвращает новую строку
типа String, подставляя значения переменных и выражений
в указанный шаблон. Первым параметром макрос принимает
строку формата с плейсхолдерами {}, а последующими
параметрами - значения, которые нужно подставить вместо
этих плейсхолдеров. В отличие от println!, макрос
format! не выводит результат на экран, а возвращает
его в виде строки.
Синтаксис
format!(template, arg1, arg2, ...)
Пример
Давайте соберём строку из переменной и числа с помощью
макроса format!:
fn main()
{
let name = "abcde";
let num = 12345;
let res = format!("{} = {}", name, num);
println!("{}", res);
}
Результат выполнения кода:
"abcde = 12345"
Пример
Давайте используем именованные переменные внутри шаблона, чтобы не перечислять их повторно:
fn main()
{
let name = "abcde";
let num = 12345;
let res = format!("{name} -> {num}");
println!("{}", res);
}
Результат выполнения кода:
"abcde -> 12345"
Пример
Давайте применим форматирование с выравниванием и указанием ширины поля прямо внутри плейсхолдера:
fn main()
{
let res = format!("|{:>8}|", "abcde");
println!("{}", res);
}
Результат выполнения кода:
"| abcde|"
Смотрите также
-
макрос
println!,
который выводит отформатированную строку на экран -
макрос
print!,
который выводит строку без перевода строки -
макрос
format_args!,
который создаёт список аргументов для форматирования -
метод
to_string,
который преобразует значение в строку String