// 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#"(?m)<p class="TEXT">(?:(?!<br>)(?!<p).)*(?:<.+?>|\z)"#).unwrap();
let string = "<p class=\"TEST\">My mother is at home.<br>
<p class=\"TEST\">My father is at home.<br>
<p class=\"TEXT\">My sister is at home.<LLbr>
<p class=\"TEXT\">My brother is at home.<AAbr>
<p class=\"TEXT\">NEW SCENARIO.
<br>
Toto's regex is very good, but is also finds a the tag ending with <br> (but this in the next line). So, I also want not fo find those kinf of tags that ends with <br> in the next line.";
// 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/