// 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)^assertEquals\(\s*(?<one>[^,]+)\s*,\s*(?<two>[^,]+)\s*,\s*(?<three>[^,;]+)\s*\);$").unwrap();
let string = "assertEquals(\"Size : Actual not as expected \", 3, existingEntity.getProperties().size());
assertEquals(\"Size : Actual not as expected \", 2, properties.size());
assertEquals(\"Verify CreatedBy\", \"SYSTEM\", createdBy);
assertEquals(\"Verify ModifyBy\", \"JSS\", existingUser.getModifiedBy());
existingUser.setFirstName(\"changed user name\");
existingUser.setEmail(\"changed_user@domain.com\");
existingUser.setTrustGroupId(\"TRG02\");
existingUser.setUuid(\"UUID200\");
// Query - Save (update)
// need to flush as within a non-committed transaction at this stage
this.userRepository.saveAndFlush(existingUser);";
// 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/