// 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"(([a-zA-Z]:[/\\]|\\\\)([0-9a-zA-Z_\-. ]+[/\\]?)*)|([0-9a-zA-Z_\-\\/.][0-9a-zA-Z_\-\\/. ]*)|(^$)").unwrap();
let string = "/test.txt
test.txt
C:\\test.txt
D:\\test\\test2.txt
asdfasdf
abcd :Dasdfrew
hbkj23j;nlkfsld khjasdf
adsfpoiuhasef pn9y8hqwer 98uhqwef;olnkqw234r'l;,qwetfs
test/test.txt
C:/test.txt
C:\\test/test.txt
C:\\/test.txt
C:/\\test.txt
aa:\\
C:\\\\test.txt
C:/\\test.txt
\\test.txt
";
// 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/