import Foundation
let pattern = #"((case) (.*):)([.\s]*)((return) (.*);)"#
let regex = try! NSRegularExpression(pattern: pattern, options: .anchorsMatchLines)
let testString = #"""
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 stringRange = NSRange(location: 0, length: testString.utf16.count)
let substitutionString = #"$2 $7:$4$6 $3;"#
let result = regex.stringByReplacingMatches(in: testString, range: stringRange, withTemplate: substitutionString)
print(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 Swift 5.2, please visit: https://developer.apple.com/documentation/foundation/nsregularexpression