// 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#"(<[ul|ol][^>]*?style=\"[^>]*?)(list-style-type:[a-zA-Z0-9:\.\s\(\)\-\,]*;?)([^\"]*\"[^>]*?>)"#).unwrap();
let string = "<ul style=\"list-style-type:disc\">
<li>Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut
<ul style=\"list-style-type:circle\">
<li>Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut</li>
<li>aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit</li>
<li>In voluptate velit esse cillum dolore eu fugiat nulla pariatur.
<ul style=\"list-style-type:square\">
<li>Excepteur sint occaecat cupidatat non proident.</li>
<li>Sunt in culpa qui officia deserunt mollit anim id est laborum.</li>
</ul>
<ul style=\"list-style-type:square; abc:asd; qwe:10pt\">
<ul style=\"aaa:eeee; list-style-type:square; abc:asd; qwe:10pt\" asdas=\"aeee\">
<ul asdsa=\"eee\" style=\"aaa:eeee; list-style-type:square; abc:asd; qwe:10pt\" asdas=\"aeee\">
<ul style=\"list-style-type:circle;\"><li cke:reset=\"1\" cke:indent=\"1\" cke:listsymbol=\"o\" style=\"\"><span></span><span>Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut</span><ul style=\"list-style-type:square;\"><li cke:indent=\"2\" cke:listsymbol=\"§\" style=\"\"><span></span><span>Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut</span></li><li cke:indent=\"2\" cke:listsymbol=\"§\" style=\"\"><span></span><span>aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit</span></li><li cke:indent=\"2\" cke:listsymbol=\"§\" style=\"\"><span></span><span>In voluptate velit esse cillum dolore eu fugiat nulla pariatur. </span><ul style=\"list-style-type:disc;\"><li cke:indent=\"3\" cke:listsymbol=\"·\" style=\"\"><span></span><span>Excepteur sint occaecat cupidatat non proident.</span></li><li cke:indent=\"3\" cke:listsymbol=\"·\" style=\"\"><span></span><span>Sunt in culpa qui officia deserunt mollit anim id est laborum.</span></li></ul></li></ul></li><li cke:indent=\"1\" cke:listsymbol=\"o\" style=\"\"><span></span><span>aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit</span><ul style=\"list-style-type:square;\"><li cke:indent=\"2\" cke:listsymbol=\"§\" style=\"\"><span></span><span>In voluptate velit esse cillum dolore eu fugiat nulla pariatur.
<ol style=\"list-style-type:lower-roman;\"> ";
// 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/