// 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"(?<!\d)(\d{5}(?:[-\s]\d{4})?)\b").unwrap();
let string = "\"Mr. Bean bought 2 tickets 2-613-213-4567\",
\"43 Butter Rd, Brossard QC K0A 3P0 – 613 213 4567\",
\"Rat Race, XX, 12345\",
\"Ignore phone numbers(613)2134567\",
\"Grab zips with dashes 12345-6789 or no space before12345-6789\",
\"Grab zips with spaces 12345 6789 or no space before12345 6789\",
\"I like 1234567 dogs\"";
// 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/