// 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#"(?m)filter.........([^"]*)"#).unwrap();
let string = "{
\"bridge\": {
\"name\": \"Homebridge\",
\"username\": \"XX:22:3D:XX:CE:31\",
\"port\": 51826,
\"pin\": \"031-45-154\"
},
\"platforms\": [
{
\"platform\": \"FHEM\",
\"name\": \"FHEM\",
\"server\": \"127.0.0.1\",
\"port\": \"8083\",
\"auth\": {\"user\": \"Bernd\", \"pass\": \"xxxxx\"},
\"filter\": \"room=Homekit\"
}
],
\"accessories\": []
}";
// 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/