Метод get
Метод get возвращает часть строки,
соответствующую указанному диапазону байтовых
индексов. В отличие от срезов, метод не паникует,
а возвращает Option: вариант Some
с подстрокой, если диапазон корректен, и
None в противном случае. Параметром
метод принимает диапазон индексов, который
может быть задан как Range,
RangeFrom, RangeTo,
RangeFull или RangeInclusive.
Синтаксис
str.get(range)
Пример
Давайте получим подстроку из строки "abcde"
по диапазону от 1 до 4:
fn main()
{
let res = "abcde".get(1..4);
println!("{:?}", res);
}
Результат выполнения кода:
Some("bcd")
Пример
Давайте попробуем получить подстроку по диапазону,
выходящему за границы строки "abcde":
fn main()
{
let res = "abcde".get(1..10);
println!("{:?}", res);
}
Результат выполнения кода:
None
Пример
Давайте получим подстроку от начала строки
"abcde" до третьего байта:
fn main()
{
let res = "abcde".get(..3);
println!("{:?}", res);
}
Результат выполнения кода:
Some("abc")
Смотрите также
-
метод
split_at,
который делит строку на две части по индексу -
метод
get_mut,
который возвращает изменяемый срез подстроки -
метод
is_char_boundary,
который проверяет, является ли индекс границей символа -
метод
len,
который возвращает длину строки в байтах