// 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#"(\<meta([\s]*(name="viewport"){1})[\w\d\s\.\-,=]*(content="){1}[\w\d\s\.\-,=]*(viewport-fit=cover){1}[\w\d\s\.\-,="]+\/\>)"#).unwrap();
let string = "<!DOCTYPE html>
<html lang=\"en\">
<head>
<meta charset=\"utf-8\" />
<title>Ionic App</title>
<base href=\"/\" />
<!-- viewport-fit on multiline meta -->
<meta name=\"viewport\"
content=\"viewport-fit=cover, width=device-width, initial-scale=1.0, minimum-scale=1.0, maximum-scale=1.0, user-scalable=no\"
/>
<meta
name=\"viewport\" content=\"viewport-fit=cover, width=device-width, initial-scale=1.0, minimum-scale=1.0, maximum-scale=1.0, user-scalable=no\"
/>
<meta
name=\"viewport\"
content=\"viewport-fit=cover, width=device-width, initial-scale=1.0, minimum-scale=1.0, maximum-scale=1.0, user-scalable=no\"
/>
<!-- viewport-fit on singleline content at the start -->
<meta name=\"viewport\" content=\"viewport-fit=cover, width=device-width, initial-scale=1.0, minimum-scale=1.0, maximum-scale=1.0, user-scalable=no\" />
<!-- viewport-fit on singleline content at the end -->
<meta name=\"viewport\" content=\"width=device-width, initial-scale=1.0, minimum-scale=1.0, maximum-scale=1.0, user-scalable=no, viewport-fit=cover\" />
<meta name=\"format-detection\" content=\"telephone=no\" />
<meta name=\"msapplication-tap-highlight\" content=\"no\" />
<link rel=\"icon\" href=\"assets/icon/favicon.ico\" />
<!-- add to homescreen for ios -->
<meta name=\"apple-mobile-web-app-capable\" content=\"yes\" />
<meta name=\"apple-mobile-web-app-status-bar-style\" content=\"black\" />
</head>
<body>
<app-root></app-root>
</body>
</html>
";
// result will be a tuple containing the start and end indices for the first match in the string
let result = regex.captures(string);
let (start, end) = match result {
Some((s, e)) => (s, e),
None => {
// ...
}
};
println!("{}", &string[start, end]);
}
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/