// 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"(?mu)^\p{L}[\p{L}\p{M}\h().'&-]*$").unwrap();
let string = "first-second
first second
first'second
first & second
first&second
first(second)
first (second)
first-second-third
first second third
first second third(fourth)
first-second-third(fourth)
word Castaٌeda
Word Word (Word)
Alfonso Lista (Potia)
Bacolod-Kalawi (Bacolod-Grande)
Balindong (Watu)
President Manuel A. Roxas
Enrique B. Magalona (Saravia)
Bacolod-Kalawi (Bacolod-Grande)
Datu Blah T. Sinsuat
Don Victoriano Chiongbian (Don Mariano Marcos)
Bulalacao (San Pedro)
Hinoba-an (Asia)";
// 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/