РЕПЕТИТОР математика физика информатика
Для школьников и студентов. Подтягивание пробелов. ЦЭ, ЦТ, ОГЭ, ЕГЭ.
Идет набор на ЛЕТО. Жмите для подробностей:)
193 of 1245 menu

Метод drain класса String

Метод drain удаляет из строки String символы в указанном диапазоне и возвращает итератор, который позволяет получить доступ к удалённым символам. Параметром метод принимает диапазон индексов (например, 2..5), который нужно удалить. Если диапазон выходит за границы строки или не совпадает с границами символов UTF-8, программа запаникует.

Синтаксис

string.drain(range)

Пример

Давайте удалим из строки "abcde" символы с индексами от 1 до 3 и соберём удалённые символы в новую строку:

fn main() { let mut s = String::from("abcde"); let drained: String = s.drain(1..3).collect(); println!("{}", s); println!("{}", drained); }

Результат выполнения кода:

"ade" "bc"

Пример

Давайте удалим из строки "12345" символы с индексами от 0 до 2 и выведем каждый удалённый символ отдельно:

fn main() { let mut s = String::from("12345"); for c in s.drain(0..2) { println!("{}", c); } println!("{}", s); }

Результат выполнения кода:

'1' '2' "345"

Смотрите также

  • метод remove,
    который удаляет символ по указанному индексу и возвращает его
  • метод truncate,
    который обрезает строку до указанной длины
  • метод split_off,
    который разделяет строку на две части по указанному индексу
  • метод retain,
    который оставляет в строке только символы, удовлетворяющие условию
Мы используем cookie для работы сайта, аналитики и персонализации. Обработка данных происходит согласно Политике конфиденциальности.
принять все настроить отклонить