// 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)^.*?\+?0*610?(\d{3})(\d{3})(\d{4})(?!\d).*$").unwrap();
let string = "xgsh6101231231234vvajxxgsh6101231231234vvajx
xgsh06101231231234vvajx
xgsh000006101231231234vvajx
+6101231231234
xgsh61012312312345vvajx
xgsh5101231231234vvajx
xgsh00000101231231234vvajx
xgsh6143545626455345601231231234vvajx
";
let substitution = "+61 (0) $1 $2 $3";
// 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/