// 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#"(?mU)<(\w+) [^<>]*\bclass\s*=\s*"[^"]*\bmd\b[^"]*"[^<>]*>[^<>]+<\/\1>"#).unwrap();
let string = "<b sdsd md sdsdds>a</b>
<b>adsa</b>
<b md>a</b>
<b md>sdasdas</b>
<b md class =\"sd\">aaa</b> <b md>aaa</b> <b md>a</b>
<b ac md>a</b>**DENEME** **DENEME**
<b md>sd <b md>sd</b></b>
<b md>(boş olmasın)</b>
<b md class =\"md\" id=\"1\">aaa</b> <b md>aaa</b> <b md>a</b>
<b md class =\"test sd md test\">aaa</b> <b md>aaa</b> <b md>a</b>
<b class=\"...blah md blah...\">(expression)</b>
<b class=\"... md ...\"></b> not match because tag is empty
<i class=\"...\"></i> not match because class attribute not include md
<span class=\"...md...\">ANYTHING</span> match
<b class=\"... md ...\"> </b>
";
// 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/