Метод trim_matches
Метод trim_matches удаляет все совпадения
с указанным шаблоном с начала и с конца строки.
Он возвращает новый срез строки &str без
изменения исходной строки. Параметром метод принимает
шаблон, которому должны соответствовать удаляемые
символы. В качестве шаблона может выступать
отдельный символ char или замыкание, которое
принимает символ и возвращает bool.
Синтаксис
str.trim_matches(pat)
Пример
Давайте удалим все символы '-' с начала
и с конца строки "---abcde---":
fn main()
{
let res = "---abcde---".trim_matches('-');
println!("{}", res);
}
Результат выполнения кода:
"abcde"
Пример
Давайте удалим все цифры с начала и с конца
строки "123abcde123" с помощью замыкания:
fn main()
{
let res = "123abcde123".trim_matches(|c: char| c.is_numeric());
println!("{}", res);
}
Результат выполнения кода:
"abcde"
Пример
Давайте удалим все пробелы с начала и с конца
строки " abcde ":
fn main()
{
let res = " abcde ".trim_matches(' ');
println!("{}", res);
}
Результат выполнения кода:
"abcde"
Пример
Давайте удалим все символы '1' и '2'
с начала и с конца строки "1212abcde2121"
с помощью замыкания:
fn main()
{
let res = "1212abcde2121".trim_matches(|c: char| c == '1' || c == '2');
println!("{}", res);
}
Результат выполнения кода:
"abcde"
Смотрите также
-
метод
trim,
который удаляет пробелы с начала и с конца строки -
метод
trim_start_matches,
который удаляет совпадения только с начала строки -
метод
trim_end_matches,
который удаляет совпадения только с конца строки -
метод
trim_matches,
который удаляет совпадения с обоих концов строки