// 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)(?<="name": ")(.+)(",\n\s+"war_memorials": ")(.*?\1,)(.*?)(,.*)(?=",)"#).unwrap();
let string = "\"properties\": {
\"cartodb_id\": 2,
\"sortcode\": 3,
\"pop2011\": 612431,
\"pop2002\": 652625,
\"pop1992\": 681206,
\"pop1977\": 631918,
\"pop1966\": 529833,
\"pop1956\": 483741,
\"pop1948\": 448964,
\"regionid\": 3,
\"countycode\": 38,
\"countyid\": 3,
\"region\": \"Sud\",
\"mnemonic\": \"AG\",
\"name\": \"Argeș\",
\"war_memorials\": \"București,132,Alba,145,Brașov,151,Covasna,100,Harghita,188,Mureș,363,Sibiu,165,Bacău,188,Botoșani,149,Iași,246,Neamț,235,Suceava,219,Vaslui,212,Bihor,199,Bistrița-Năsăud,120,Cluj,186,Maramureș,,Satu Mare,119,Sălaj,79,Brăila,47,Buzău,188,Constanța,89,Galați,,Tulcea,87,Vrancea,76,Argeș,252,Călărași,115,Dâmbovița,191,Giurgiu,180,Ialomița,113,Prahova,162,Teleorman,202,Dolj,212,Gorj,154,Mehedinți,110,Olt,163,Vâlcea,185,Arad,233,Caraș-Severin,176,Hunedoara,118,Timiș,321\",
\"version\": \"2016-03-10T00:00:00Z\",
\"comune\": 95,
\"orase\": \"4\"
}
}
";
let substitution = "\\1\\2\\4";
// 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/