import Foundation
let pattern = #".*Conference ID\D*([0-9]*).*"#
let regex = try! NSRegularExpression(pattern: pattern, options: .anchorsMatchLines)
let testString = #"""
.........................................................................................................................................
Join online meeting
https://meet.lync.com/p3group/ralf.klueber/XXXXXXXX
Join by Phone
+49696670000 (Dial-in Number) Deutsch (Deutschland)
Find a local number
https://dialin.lync.com/c52ce599-1156-4654-a150-ff021e3a0abc
Conference ID:
348054656
Forgot your dial-in PIN?
https://dialin.lync.com/c52ce000-0000-0000-a150-ff021e3a0abc
.......................................................................................................
"""#
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