// 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)\bnew\s+Array\s*[(]\s*(".*?)(?=[)]\s*,\s*new\s+Array|\s*[)]\s*[)]\s*[^(]+$)"#).unwrap();
let string = " mmSuggestDeliver(0, new Array(\"Name\", \"Category\", \"Keywords\", \"Bias\", \"Extension\", \"IDs\"), new Array(new Array(\"HSBC Holdings plc (Spons. ADRs)\", \"Stocks\", \"HSBC|US4042804066|HSBC||\", \"75\", \"\", \"hsbc|HSBC|1|4917\"),new Array(\"HSBC Holdings plc\", \"Stocks\", \"|GB0005405286|||HSBA\", \"75\", \"\", \"hsbc-gb0005405286||1|1046\"),new Array(\"HSBC Trinkaus & Burkhardt AG\", \"Stocks\", \"|DE0008115106|||TUBG\", \"75\", \"\", \"hsbc_trinkausburkhardt||1|3774\"),new Array(\"HSBC Bank Malta Plc Registered Shs\", \"Stocks\", \"|MT0000030107|||\", \"75\", \"\", \"hsbc_bank_malta||1|16831644\"),new Array(\"HSBC-D7 SA de CV SIID (A)\", \"Stocks\", \"|MX51HS0Q00E8|||\", \"75\", \"\", \"hsbc-d7||1|5125971\"),new Array(\"HSBC US Buy-Out GmbH & Co. KGaA\", \"Stocks\", \"|DE000A0MM6H7|||\", \"75\", \"\", \"hsbc_us_buy-out_gmbhco||1|23145\"),new Array(\"HSBC Holdings PLC ADR Cert Deposito Arg Repr 0.5 ADRs\", \"Stocks\", \"|ARDEUT112257|||\", \"75\", \"\", \"hsbc_2||1|1399269\"),new Array(\"HSBC Holdings PLC6.2 % Pfd Shs Sponsored American Deposit Repr 1/40th 6.2 % PfdShs Ser -A-\", \"Stocks\", \"HSBC.PA|US4042806046|HSBC.PA||\", \"75\", \"\", \"hsbc-pa|HSBC.PA|1|19327\"),new Array(\"HSBC Holdings PLC 8 % Perp Sub Cap Secs 2010-Without Fixed Maturity Series -2-\", \"Stocks\", \"HSEB|US4042808026|HSEB||\", \"75\", \"\", \"hseb|HSEB|1|5083319\"),new Array(\"HSBC Holdings PLC 8 1-8 % Perpetual Sub Cap Secs 2008-Exch into Non-Cum Dollar Pref Shs\", \"Stocks\", \"HSEA|US4042807036|HSEA||\", \"75\", \"\", \"hsea|HSEA|1|3782270\")), 10, 0);";
// 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/