Метод escape_unicode
Метод escape_unicode создаёт итератор, который
преобразует каждый символ строки в его Unicode-экранированное
представление вида \u{XXXX}. Метод не принимает
параметров и возвращает значение типа
EscapeUnicode, реализующее трейт
Iterator. Такой итератор удобно использовать для
безопасного вывода символов в виде ASCII-последовательности,
например при логировании или отладке.
Синтаксис
str.escape_unicode()
Пример
Давайте экранируем строку "abcde" и соберём
результат в новую строку:
fn main()
{
let res: String = "abcde".escape_unicode().collect();
println!("{}", res);
}
Результат выполнения кода:
\u{61}\u{62}\u{63}\u{64}\u{65}
Пример
Давайте экранируем строку с кириллицей "абв"
и выведем каждый символ отдельно:
fn main()
{
for c in "абв".escape_unicode()
{
println!("{}", c);
}
}
Результат выполнения кода:
\u{430}
\u{431}
\u{432}
Пример
Давайте экранируем строку "12345" и соберём
результат в вектор строк:
fn main()
{
let res: Vec<String> = "12345"
.escape_unicode()
.map(|c| c.to_string())
.collect();
println!("{:?}", res);
}
Результат выполнения кода:
["\\u{31}", "\\u{32}", "\\u{33}", "\\u{34}", "\\u{35}"]
Смотрите также
-
метод
escape_debug,
который экранирует символы для отладочного вывода -
метод
escape_default,
который экранирует символы в стиле литералов Rust -
метод
chars,
который возвращает итератор по символам строки -
метод
encode_utf16,
который кодирует строку в последовательность UTF-16