Метод splitn
Метод splitn разбивает строку на подстроки
по указанному разделителю и возвращает итератор.
В отличие от метода split, метод splitn
принимает два параметра: количество частей n
и разделитель pat. Строка будет разбита
не более чем на n частей, при этом последняя
часть будет содержать весь остаток строки вместе
со всеми оставшимися разделителями.
Синтаксис
str.splitn(n, pat)
Пример
Давайте разобьём строку "abcde"
по символу "c" на 2 части:
fn main()
{
let res: Vec<&str> = "abcde".splitn(2, "c").collect();
println!("{:?}", res);
}
Результат выполнения кода:
["ab", "de"]
Пример
Давайте разобьём строку "12345"
по символу "2" на 3 части:
fn main()
{
let res: Vec<&str> = "12345".splitn(3, "2").collect();
println!("{:?}", res);
}
Результат выполнения кода:
["1", "345"]
Пример
Давайте разобьём строку "abcdeabcde"
по символу "c" на 2 части и посмотрим,
как поведёт себя метод, когда разделителей больше,
чем частей:
fn main()
{
let res: Vec<&str> = "abcdeabcde".splitn(2, "c").collect();
println!("{:?}", res);
}
Результат выполнения кода:
["ab", "deabcde"]
Как видим, последняя часть содержит весь остаток строки вместе со всеми оставшимися разделителями.
Пример
Давайте разобьём строку "abcde"
по символу "c" на 1 часть:
fn main()
{
let res: Vec<&str> = "abcde".splitn(1, "c").collect();
println!("{:?}", res);
}
Результат выполнения кода:
["abcde"]
Смотрите также
-
метод
split,
который разбивает строку по разделителю без ограничения количества частей -
метод
rsplitn,
который разбивает строку справа налево с ограничением количества частей -
метод
split_once,
который разбивает строку на две части по первому вхождению разделителя -
метод
split_whitespace,
который разбивает строку по пробельным символам