// 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#"(?i)name\s*=\s*['"]?news_keywords[^>]+content\s*=\s*['"]?([^'"]*)['"]?|content\s*=\s*['"]?([^"']*)['"]?[^>]+name\s*=\s*['"]?news_keywords['"]?"#).unwrap();
let string = " <meta name=\"keywords\" content=\"People, Royals\" />
<meta name=\"news_keywords\" content=\"william,george,charlotte,kate middleton,prinz george,prinz,prinzessin charlotte,royal-family,marys hospitals,royal-fans\" />
<meta name=\"author\" content=\"Blick\" />
<meta name=\"date\" content=\"2018-04-23T14:20:42+0200\" />
<meta name=\"robots\" content=\"index,follow,noodp,noarchive\" />
<meta name=\"contentId\" content=\"8171954\" />
<meta name=\"cXenseParse:recs:articleid\" content=\"8171954\"/>
<meta name=\"contentType\" content=\"news\" />
<meta name=\"cXenseParse:rag-pagetype\" content=\"news\"/>
<meta name=\"contentPool\" content=\"web|mobile|app\" />
";
// 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/