Function regcomp

Source
pub fn regcomp(reg: &str, flags: RegcompFlags) -> Result<Regex>
Expand description

Compiles a regex.

This is a thin wrapper around Regex::new.

§Arguments

  • reg: regular expression to compile, as a string.
  • flags: RegcompFlags to pass to the function.

§Returns

An opaque Regex object will be returned.

§Errors

Will return a RegexError upon failure.

§Examples

use tre_regex::{RegcompFlags, RegexecFlags, regcomp, regexec};

let regcomp_flags = RegcompFlags::new().add(RegcompFlags::BASIC);
let regexec_flags = RegexecFlags::new().add(RegexecFlags::NONE);
let compiled_reg = regcomp("[A-Za-z0-9]*", regcomp_flags)?;
let matches = regexec(&compiled_reg, "hello", 1, regexec_flags)?;
for (i, matched) in matches.into_iter().enumerate() {
    match matched {
        Some(substr) => {
            match substr {
                Ok(substr) => println!("Match {i}: '{}'", substr),
                Err(e) => println!("Match {i}: <Error: {e}>"),
            }
        },
        None => println!("Match {i}: <None>"),
    }
}