// 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)(?i)(?<!\S)like\s*'%".*?"%'"#).unwrap();
let string = "Select Count(distinct c.requestId) FROM Abc1Value c WHERE 1=1 and c.templateName is NULL AND (c.quickStatus IS NULL OR c.quickStatus = 'S') AND (c.sCode='MYCODE' OR exists (SELECT b.dseaReqId FROM drstSShareValue b WHERE b.dseaReqId=c.requestId and b.sCode='MYCODE')) AND (upper(c.licenseNo) like '%\"12548\"%' or upper(c.docLicenseNo) like '%\"\"%' or upper(c.uncontrolledLicense) like '%\"\"%' or upper(c.nonAuthNo) like '%\"\"%' or upper(c.reAuthNo) like '%\"\"%') and upper(c.grantedByCtryCode) like '%US%' ";
// 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/