import Foundation
let pattern = #"\(\\x07([0-9]{4,})|\(\\t([0-9]{4,})\("#
let regex = try! NSRegularExpression(pattern: pattern, options: .anchorsMatchLines)
let testString = ##"""
#걸려야함
4nYoywMzx6630636\x010\x0200\x011\x011\x03\x14\x03\x14\x03\x03\x0820210430\x0820410430\x0820210430\x0820410430\x03(\x071000000(\x041190\x03.\x0202(\x010\x03d\x08207504306AAAU(\x0230\x1e012020460104600200000000020020\x1e01202046010460020000000002002030630636009910200201020020000999--020020------2-01--\x03CTL\x013(\x010(\x010(\x010(\x010(\x010(\x010(\x010\x03#NA(\x011(\x010(\x010(\x010\x011\x03(\x011\x03-\x01 \x03#NA\x011\x01 \x011\x0200(\x041190(\x010\x03N갱신형 재진단암진단비(2년 대기형)[기본계약](계속보장형)\x03\x01 \x012\x03#NA\x03\x03#NA(\x041190\x03#NA(\x010\x012\x03#NA\x03#NA\x010(\x010(\x010(\x010(\x010(\x010(\x010\x03(\x010\x03\x03\x03\x03(\x010\x0220\x01 \x01 (\x010\x03\x01{\x03\x03\x03\n
4nYpMQSq0v620255\x010\x0200\x011\x011\x03\x01\x03\x01\x03\x03\x0820210430\x0820220430\x0820210430\x0820220430\x03(\x0850000000(\x041320\x03*\x0201(\x0215\x03\x08203604306AABI(\x011\x1c0100104223310010000000001001\x1c0100104223310010000000001001/0620255009990009999000999000999----------2-01--\x03CTL\x013(\x010\x011(\x010(\x010(\x010(\x010(\x010(\x010\x03#NA(\x011(\x010(\x010(\x010\x011\x03(\x011\x03)\x01 \x03#NA\x011\x01 \x011\x0200(\x041811(\x010\x03\x1f갱신형 상해입원의료비\x03\x03100\x011\x03#NA\x03\x03#NA(\x041320\x013(\x010\x012\x03#NA\x03#NA\x011(\x010(\x010(\x010(\x010(\x010(\x010\x03(\x010\x03\x03\x03\x03(\x010\x0201\x01 \x01 (\x010\x03_\x01{\x03\x03\x02\n
\(\\x08([0-9]{4,})\([0-9]{3,}
'4nXfg3E6Qb(\x011(\x011\x03CTL\x133190026942021031120\x0201\x040001\n'
"""##
let stringRange = NSRange(location: 0, length: testString.utf16.count)
let matches = regex.matches(in: testString, range: stringRange)
var result: [[String]] = []
for match in matches {
var groups: [String] = []
for rangeIndex in 1 ..< match.numberOfRanges {
let nsRange = match.range(at: rangeIndex)
guard !NSEqualRanges(nsRange, NSMakeRange(NSNotFound, 0)) else { continue }
let string = (testString as NSString).substring(with: nsRange)
groups.append(string)
}
if !groups.isEmpty {
result.append(groups)
}
}
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