// 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).*((?<=:\s)[\w\s]+(?=\s\(\d{5}\))).*((?<=\s)[\w._-]+@[\w._-]+).*").unwrap();
let string = "Residential Status: Active LP: $3,495,000 Sales MLS #: 000000 Orig.Price: $3,695,000 Price: MT: 273 APN: 000-00 List Date: 02/11/2009 AMT: 269 Listing Type: Exclusive Agency (A) Court/Lndr Apprvl Needed: N Address: 16595 La Gracia Unit#/Space#: City: Rancho Santa Fe, CA Zip: 92067 MapCode: 1164D4 Bedrooms: 5 Year Built: 1990 Zoning: RR1 Units In Complex: Media: 12 - VT: http://www.previewfirst.com/ REMARKS AND SHOWING INFO Confidential Remarks: Showing Instructions: CLOFATS LISTING AGENT AND OFFICE INFORMATION Listing Agent: This Person (00000) Agent Phone: (000) 000-4024 Add'l Phone: (000) 000-4024 2nd Agent: Jason A. (000) 2nd Agt Phone: (000) 000-4024 2nd Add'l Phone: (000) 000-4024 Listing Office: Estates, Inc. Office Phone: (000) 000-4024 Broker Office ID: 000 Email: thisemail@aol.com Fax: (000) 000-9553 Pager: SOLD INFORMATION Off Market Date: Close of Escrow: Expiration Date: Sale Price: Selling Agent";
let substitution = "Name: $1, Email: $2";
// result will be a String with the substituted value
let result = regex.replace_all(string, substitution);
println!("{}", result);
}
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/