// 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-z0-9+\/]{4}\n?)*(?:[A-Za-z0-9+\/]{2}==|[A-Za-z0-9+\/]{3}=)$)").unwrap();
let string = "hQGkA8uYb/u24XuEAQzAh5dH2QUPv5rQ+uHwVQQShCgmgJzlOAq+L6Ld4l4P0MOeUYK7Zvt7HiYM
MzH5Pdi+VfiW0JWDqTdvQZS6o0SfBzoZqwqplAofLH+7hlu8qS0n6FFxXk2b4N5InMf/zWlqpDb6
oeGZQBbLJy69drKzpJYvqMM+OuzLUA4Wwv/WfwGtHo/fQ3H2JSFwPJz3QHuqvTrnIhO23fZa8Qpd
M36LBbX3yqrmrJo63NHy9QL9eF6+/WU7qsKOxGSm2QlDaREKx6ZlXgZ+FY7SEt1C6PHPXhggf4Ts
EF5rb+0goEniDbgiofYpUt0+aLkwsNnMYHx0+yAelPP45ZbCKxQe1Tk3gq5oAspWvUAvt6SqmNW5
CrakBXYSIpNqHWdjdW75yeUYPKIi1X1SZi1mVGy0ayrOGoPbOY6C77JwGMxqEOZtDLBiy/u9g1II
Zy1dm3UxhX/Tir2Cg+5kTAVQ6qqliklhGSCcYw0rNMfl+q151zKu4/j9id5pHnrkjnjrV1odz3u/
aBKxLpzf8cf2BlYdRooqvFIbdJULftmn0lABukKc0eaPclSdz//DzTU318fpHnFbzlUpi82UVNL4
IUqUviQNw7SX41v90N39iNP3JmczkN8J70+o7NLYlcvp4xXIFOcRaDrinbCcXT1WfQ==";
// result will be a tuple containing the start and end indices for the first match in the string
let result = regex.captures(string);
let (start, end) = match result {
Some((s, e)) => (s, e),
None => {
// ...
}
};
println!("{}", &string[start, end]);
}
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/