Crate regex_macro

Source
Expand description

This crate contains a little macro to generate a lazy Regex and remove some boilerplate when compiling regex expressions.

§Usage

Generally you want to avoid compiling a regex multiple times. The regex crate suggests using lazy_static for this but you can also use once_cell which is what this crate uses. For example:

use regex_macro::regex;

let re = regex!("[0-9a-f]+");
assert!(re.is_match("1234deadbeef"));

Which is equivalent to the following.

use once_cell::sync::Lazy;
use regex::Regex;

static RE: Lazy<Regex> = Lazy::new(|| Regex::new("[0-9a-f]+").unwrap());
assert!(RE.is_match("1234deadbeef"));

Macros§

  • Generate a static regex.