// 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)^(?P<unit_type>SFA)(?P<unit_size>80|63|50|40|32|25)(?P<mounting_type>G|F)(?P<tank_port>T|)(?P<decompression_feature>0|1)(?P<sep_1>-)(?P<unit_series>1X)(?P<sep_2>/)(?P<seal_material>M)(?P<sep_3>/)(?P<pipe_port>01)(?P<additional_details>(.|[0-9])*)$
").unwrap();
let string = "SFA80F1-1X/M/01
SFA80F0-1X/M/01
SFA32G0-1X/M/01
SFA32GT0-1X/M/01
SFA32G1-1X/M/01
SFA40FT0-1X/M/01
SFA40F0-1X/M/01
SFA40F1-1X/M/01
SFA50F1-1X/M/01
SFA50F0-1X/M/01
SFA50FT0-1X/M/01
SFA63F0-1X/M/01
SFA63F1-1X/M/01
SFA63FT0-1X/M/01
SFA25G0-1X/M/01
SFA80FT1-1X/M/01
SFA80FT0-1X/M/01
SFA32GT1-1X/M/01
";
// 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/