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

Метод escape_debug

Метод escape_debug возвращает итератор, который при обходе выдаёт символы строки, экранированные так же, как при отладочном выводе через {:?}. Это удобно для получения читаемого представления строки, содержащей управляющие символы, кавычки и другие специальные символы. Параметров метод не принимает, а возвращает значение типа EscapeDebug, которое реализует трейт Iterator.

Синтаксис

str.escape_debug()

Пример

Давайте получим экранированное представление строки с символом новой строки и соберём результат в новую строку:

fn main() { let s = "abc\nde"; let res: String = s.escape_debug().collect(); println!("{}", res); }

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

abc\nde

Пример

Давайте сравним обычный вывод строки и результат работы метода escape_debug для строки с двойными кавычками и обратным слешем:

fn main() { let s = "abc\"de\\f"; let res: String = s.escape_debug().collect(); println!("{}", res); }

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

abc\"de\\f

Пример

Давайте посмотрим, как метод escape_debug экранирует символ табуляции и возврат каретки:

fn main() { let s = "12\t34\r5"; let res: String = s.escape_debug().collect(); println!("{}", res); }

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

12\t34\r5

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

  • метод escape_default,
    который экранирует символы по правилам литералов Rust
  • метод escape_unicode,
    который экранирует символы в виде Unicode-последовательностей
  • метод chars,
    который возвращает итератор по символам строки
  • метод bytes,
    который возвращает итератор по байтам строки
Мы используем cookie для работы сайта, аналитики и персонализации. Обработка данных происходит согласно Политике конфиденциальности.
принять все настроить отклонить