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>"),
}
}