// 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#"(?mi){\s*file\s*:\s*["']\s*(http[^"']+\.mp4)"#).unwrap();
let string = "<!DOCTYPE html>
<html>
<head>
<meta charset=\"UTF-8\" />
<meta name=\"viewport\" content=\"width=device-width, initial-scale=1, maximum-scale=1\" />
<link href='https://fonts.googleapis.com/css?family=Hanuman' rel='stylesheet' type='text/css'>
<link href=\"https://fonts.googleapis.com/css?family=Scada\" rel=\"stylesheet\">
<link href=\"jwplayer-7.12.8/skins/prime.min2.css\" rel=\"stylesheet\" type=\"text/css\" />
<script type=\"text/javascript\" src=\"jwplayer-7.12.8/jwplayer.js\"></script>
<script type=\"text/javascript\">jwplayer.key=\"I9HOJrL1NmqruQ60as34wt34/23422dsdrwer==\";</script>
</head>
<body>
<div id=\"picasa\" class=\"picasa\"></div>
<script type=\"text/javascript\">
var playerInstance = jwplayer(\"picasa\");
playerInstance.setup({
id:'picasa',
controls: true,
displaytitle: true,
flashplayer: \"//ssl.p.jwpcdn.com/player/v/7.12.5/jwplayer.flash.swf\",
width: \"100%\",
height: \"100%\",
aspectratio: \"16:9\",
fullscreen: \"true\",
provider: 'http',
autostart: false,
image:'http://localhost/viral/viralvideo.jpg',
sources: [{file:\"http://localhost/srt/43534234/viral022018SD.MP4\",label:\"SD\",type: \"video/mp4\"},{file:\"http://localhost/srt/43534234/viral022018HD.MP4\",label:\"HD\",type: \"video/mp4\",default: true}],
sharing:{
link: \"\",
code: \"\",
heading: \"Share\",
sites: [\"facebook\",\"twitter\",\"tumblr\",\"googleplus\",\"reddit\",\"linkedin\",\"interest\",\"email\"],
},
sharing:{
link: \"\",
code: \"\",
heading: \"Share\",
sites: [\"facebook\",\"twitter\",\"tumblr\",\"googleplus\",\"reddit\",\"linkedin\",\"interest\",\"email\"],
},
tracks: [{
file: 'http://localhost/srt/viralvideo022018.srt',
label: 'English',
kind: 'captions',
\"default\":true
}],
captions: {
color: '#FFEB3B',
fontSize: 14,
fontFamily: 'Scada, Hanuman, sans-serif, Verdana, cursive',
fontOpacity: 100,
backgroundOpacity: 0,
backgroundColor: '#000000',
edgeStyle: 'raised',
windowColor: '#000000',
windowOpacity: 0
},
skin: {
name: 'prime',
},
});
</script>
</body>
</html>";
// 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/