// 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)((case) (.*):)([.\s]*)((return) (.*);)").unwrap();
let string = " switch (frequency)
{
case GIIncomeFrequencyEnum.ANNUALLY:
return QuotingPeriodType.Yearly;
case GIIncomeFrequencyEnum.QUARTERLY:
return QuotingPeriodType.Quarterly;
case GIIncomeFrequencyEnum.MONTHLY:
return QuotingPeriodType.Monthly;
case GIIncomeFrequencyEnum.BI_WEEKLY:
return QuotingPeriodType.Every2Weeks;
case GIIncomeFrequencyEnum.WEEKLY:
return QuotingPeriodType.Weekly;
case GIIncomeFrequencyEnum.DAILY:
return QuotingPeriodType.Daily;
case GIIncomeFrequencyEnum.HOURLY:
return QuotingPeriodType.Hourly;
case GIIncomeFrequencyEnum.ONE_TIME:
return QuotingPeriodType.OneTime;
case GIIncomeFrequencyEnum.SEMI_MONTHLY:
return QuotingPeriodType.SemiMonthly;
default:
return QuotingPeriodType.Yearly;
}";
let substitution = "$2 $7:$4$6 $3;";
// result will be a String with the substituted value
let result = regex.replace_all(string, substitution);
println!("{}", result);
}
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/