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

Метод new класса RegexBuilder

Метод new класса RegexBuilder создаёт новый конструктор регулярного выражения. Он принимает в качестве параметра строку с шаблоном регулярного выражения и возвращает значение типа RegexBuilder, которое затем можно настроить с помощью различных методов и собрать в готовое регулярное выражение методом build. Метод возвращает Result, поэтому при некорректном шаблоне можно обработать ошибку.

Синтаксис

RegexBuilder::new(pattern)

Пример

Давайте создадим простой конструктор регулярного выражения с шаблоном "abc" и соберём его:

use regex::RegexBuilder; fn main() { let builder = RegexBuilder::new("abc"); let re = builder.build().unwrap(); let res = re.is_match("abcde"); println!("{}", res); }

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

true

Пример

Давайте создадим конструктор с настройкой регистронезависимого поиска и проверим совпадение:

use regex::RegexBuilder; fn main() { let re = RegexBuilder::new("abc") .case_insensitive(true) .build() .unwrap(); let res = re.is_match("ABC"); println!("{}", res); }

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

true

Пример

Давайте передадим в конструктор некорректный шаблон и обработаем ошибку:

use regex::RegexBuilder; fn main() { let res = RegexBuilder::new("(").build(); match res { Ok(_) => println!("ok"), Err(e) => println!("error: {}", e), } }

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

error: regex parse error: ( ^ error: unclosed group

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

  • класс RegexBuilder,
    который представляет конструктор регулярного выражения
  • метод build,
    который собирает регулярное выражение из конструктора
  • метод case_insensitive,
    который включает регистронезависимый поиск
  • метод new класса Regex,
    который создаёт регулярное выражение напрямую из шаблона
Мы используем cookie для работы сайта, аналитики и персонализации. Обработка данных происходит согласно Политике конфиденциальности.
принять все настроить отклонить