Метод build класса RegexBuilder
Метод build завершает цепочку
настройки RegexBuilder и создаёт
готовый объект Regex. Он применяет
все ранее заданные параметры (регистр,
многострочность, флаг Unicode и другие)
и компилирует шаблон. Параметров метод
не принимает. Возвращает значение типа
Result: при успехе - объект
Regex, при ошибке компиляции -
Error.
Синтаксис
RegexBuilder::new(pattern).build()
Пример
Давайте скомпилируем простое регулярное выражение без дополнительных настроек:
use regex::RegexBuilder;
fn main()
{
let re = RegexBuilder::new(r"\d+")
.build()
.unwrap();
println!("{}", re.is_match("12345"));
}
Результат выполнения кода:
true
Пример
Давайте включим режим без учёта регистра
перед вызовом build:
use regex::RegexBuilder;
fn main()
{
let re = RegexBuilder::new("abcde")
.case_insensitive(true)
.build()
.unwrap();
println!("{}", re.is_match("ABCDE"));
}
Результат выполнения кода:
true
Пример
Давайте обработаем ошибку компиляции
некорректного шаблона через build:
use regex::RegexBuilder;
fn main()
{
let res = RegexBuilder::new(r"(abc")
.build();
match res
{
Ok(_) => println!("ok"),
Err(_) => println!("error"),
}
}
Результат выполнения кода:
"error"
Смотрите также
-
класс
RegexBuilder,
который позволяет настраивать регулярное выражение перед компиляцией -
метод
new,
который создаёт новый построитель регулярного выражения -
метод
case_insensitive,
который включает режим без учёта регистра -
класс
Regex,
который представляет скомпилированное регулярное выражение