Класс str
Класс str представляет собой строковый срез
в Rust. Это примитивный тип, который хранит
последовательность байтов UTF-8 и обычно используется
через ссылку &str. Строковые срезы являются
неизменяемыми, то есть их содержимое нельзя изменить
после создания. Класс str предоставляет
множество методов для работы со строками: поиска
подстрок, разбиения, изменения регистра, обрезки
пробелов и других операций.
Строковый срез str чаще всего встречается
в коде в виде ссылки &str. Строковые
литералы, такие как "abcde", имеют тип
&'static str. Владеющую строку можно
получить с помощью типа String, а затем
взять из неё срез через as_str или
&s[..].
Синтаксис
&str
str
Пример
Давайте создадим строковый срез и выведем его на экран:
fn main()
{
let res: &str = "abcde";
println!("{}", res);
}
Результат выполнения кода:
"abcde"
Пример
Давайте получим строковый срез из владеющей строки
String:
fn main()
{
let s = String::from("abcde");
let res: &str = &s;
println!("{}", res);
}
Результат выполнения кода:
"abcde"
Пример
Давайте применим метод len к строковому
срезу, чтобы узнать количество байтов:
fn main()
{
let s: &str = "abcde";
let res = s.len();
println!("{}", res);
}
Результат выполнения кода:
5
Пример
Давайте применим метод to_uppercase к
строковому срезу, чтобы перевести его в верхний
регистр:
fn main()
{
let s: &str = "abcde";
let res = s.to_uppercase();
println!("{}", res);
}
Результат выполнения кода:
"ABCDE"