Метод insert_str
Метод insert_str вставляет строковый срез
в строку String по указанному индексу в байтах.
Первым параметром метод принимает позицию, в которую
нужно вставить подстроку, а вторым параметром -
строковый срез, который нужно вставить.
Исходная строка при этом изменяется.
Важно учитывать, что позиция задаётся в байтах, а не в символах. Если указанная позиция не является границей символа UTF-8, метод вызовет панику. Также паника возникнет, если позиция выходит за пределы длины строки.
Синтаксис
string.insert_str(idx, string)
Пример
Давайте вставим подстроку "123" в строку
"abcde" по индексу 0:
fn main()
{
let mut s = String::from("abcde");
s.insert_str(0, "123");
println!("{}", s);
}
Результат выполнения кода:
"123abcde"
Пример
Давайте вставим подстроку "123" в строку
"abcde" по индексу 2:
fn main()
{
let mut s = String::from("abcde");
s.insert_str(2, "123");
println!("{}", s);
}
Результат выполнения кода:
"ab123cde"
Пример
Давайте вставим подстроку "123" в конец строки
"abcde", указав индекс, равный её длине:
fn main()
{
let mut s = String::from("abcde");
let len = s.len();
s.insert_str(len, "123");
println!("{}", s);
}
Результат выполнения кода:
"abcde123"