// include the latest version of the regex crate in your Cargo.toml
extern crate regex;
use regex::Regex;
fn main() {
let regex = Regex::new(r"(?miu)^ver(ä|a)ntwortlich(er)?\.?\s+g(em((ä|a)(ß|s{1,2})?)?)?\.?\s+a(rt(ikel)?)?\.?").unwrap();
let string = "Verantwortlicher gemäß Art
Verantwortlicher gemäß. Art.
Verantwortlicher gemäss Art
Verantwortlicher gemäs art
Verantwortlicher gemaß Art
Verantwortlicher gemä Art
Verantwortlicher. gem A.
Verantwortlicher gem Art
Verantwortlicher g. A.
Verantwortlicher g Artikel.
Verantwortlicher g Art
Verantwortlicher gemass Artikel
Verantwortlicher g Artikel
Verantwortlicher gemass Artikel
Verantwortlich. gemass Artikel
Verantwortlich gemass Artikel
^
verantwortlicher
\\s+
g(em((ä|a)(ß|s+)?)?)?\\.?
\\s+
a(rt(ikel)?)?\\.?
";
// result will be an iterator over tuples containing the start and end indices for each match in the string
let result = regex.captures_iter(string);
for mat in result {
println!("{:?}", mat);
}
}
Please keep in mind that these code samples are automatically generated and are not guaranteed to work. If you find any syntax errors, feel free to submit a bug report. For a full regex reference for Rust, please visit: https://docs.rs/regex/latest/regex/