РЕПЕТИТОР математика физика информатика
Для школьников и студентов. Подтягивание пробелов. ЦЭ, ЦТ, ОГЭ, ЕГЭ.
Идет набор на ЛЕТО. Жмите для подробностей:)
955 of 1245 menu

Метод split класса Regex

Метод split класса Regex разделяет строку на подстроки по совпадениям регулярного выражения. Метод возвращает итератор Split, который при обходе выдаёт части исходной строки, расположенные между найденными совпадениями. Параметром метод принимает строку, которую нужно разделить.

Если регулярное выражение не найдено в строке, итератор вернёт всю исходную строку целиком. Если совпадения находятся в начале или в конце строки, то на соответствующих краях могут появиться пустые подстроки.

Синтаксис

regex.split(text)

Пример

Давайте разделим строку "abcde" по регулярному выражению, которое соответствует символу "c":

use regex::Regex; fn main() { let re = Regex::new("c").unwrap(); let res: Vec<&str> = re.split("abcde").collect(); println!("{:?}", res); }

Результат выполнения кода:

["ab", "de"]

Пример

Давайте разделим строку "12345" по регулярному выражению, которое соответствует одной или нескольким цифрам:

use regex::Regex; fn main() { let re = Regex::new(r"\d+").unwrap(); let res: Vec<&str> = re.split("12345").collect(); println!("{:?}", res); }

Результат выполнения кода:

["", ""]

Так как всё содержимое строки совпало с регулярным выражением, метод вернул две пустые подстроки - до и после совпадения.

Пример

Давайте разделим строку "abcde" по регулярному выражению, которое соответствует символам "b" или "d":

use regex::Regex; fn main() { let re = Regex::new("[bd]").unwrap(); let res: Vec<&str> = re.split("abcde").collect(); println!("{:?}", res); }

Результат выполнения кода:

["a", "c", "e"]

Пример

Давайте разделим строку "abcde" по регулярному выражению, которое не встречается в строке:

use regex::Regex; fn main() { let re = Regex::new("xyz").unwrap(); let res: Vec<&str> = re.split("abcde").collect(); println!("{:?}", res); }

Результат выполнения кода:

["abcde"]

Смотрите также

  • метод splitn,
    который разделяет строку на ограниченное число частей
  • метод replace_all,
    который заменяет все совпадения регулярного выражения
  • метод find_iter,
    который возвращает итератор по всем совпадениям
  • класс Regex,
    который представляет скомпилированное регулярное выражение
Мы используем cookie для работы сайта, аналитики и персонализации. Обработка данных происходит согласно Политике конфиденциальности.
принять все настроить отклонить