Метод rsplit_once
Метод rsplit_once ищет последнее вхождение
разделителя в строке и разделяет строку на две части
по этому разделителю. Метод возвращает значение
типа Option: если разделитель найден, возвращается
кортеж Some((before, after)), где before -
часть строки до последнего вхождения разделителя,
а after - часть строки после него. Если разделитель
не найден, метод возвращает None. Параметром
метод принимает разделитель, по которому нужно
разделить строку.
Синтаксис
str.rsplit_once(pat)
Пример
Давайте разделим строку "abcde-12345-xyz"
по последнему вхождению разделителя "-":
fn main()
{
let res = "abcde-12345-xyz".rsplit_once("-");
println!("{:?}", res);
}
Результат выполнения кода:
Some(("abcde-12345", "xyz"))
Пример
Давайте разделим строку "abcde"
по разделителю "-", которого в строке нет:
fn main()
{
let res = "abcde".rsplit_once("-");
println!("{:?}", res);
}
Результат выполнения кода:
None
Пример
Давайте разделим строку "12345"
по разделителю "3" и извлечём части кортежа:
fn main()
{
let res = "12345".rsplit_once("3");
match res
{
Some((before, after)) => {
println!("before: {}", before);
println!("after: {}", after);
},
None => println!("separator not found"),
}
}
Результат выполнения кода:
before: 12
after: 45
Смотрите также
-
метод
split_once,
который разделяет строку по первому вхождению разделителя -
метод
rsplit,
который разбивает строку по разделителю справа налево -
метод
rfind,
который возвращает позицию последнего вхождения подстроки -
метод
split,
который разбивает строку по разделителю на несколько частей