// 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)^(\d+(?:\.\d+)*)\s+(.+?)\s+(\d{1,3}(?:\.\d{3})*,\d{2})\s+(\d{1,3}(?:\.\d{3})*,\d{2})(?:\s+(\d{1,3}(?:\.\d{3})*,\d{2}(?:\s+[CD])?))?$").unwrap();
let string = "Random number Account number Account Name credit$ Debt$ Value of account
10 53 Another Financial Instruments 1.100,00 1.500,00 400,00 D
531 Café C/C (Taxes) 100,00 50,00 50,00 C
230 5321 Example 100,00 50,00 50,00 C
54 Example 2 300,00 500,00 200,00 D
Account number Account Name credit$ Debt$ Value of account
5.3 Another Financial Instruments 1.100,00 1.500,00 400,00
5.3.1 Café C/C (Taxes) 100,00 50,00 50,00
5.3.2.1 Example 100,00 50,00 50,00
5.4 Example 2 300,00 500,00 200,00
Account number Account Name credit$ Debt$
53 Another Financial Instruments 1.100,00 1.500,00
531 Café C/C (Taxes) 100,00 50,00
5321 Example 100,00 50,00
54 Example 2 300,00 500,00";
// 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/