import Foundation
let pattern = #"oauth_token=(?P<oauth_token>.*?)&portlet_session=(?P<portlet_session>.*?) "#
let regex = try! NSRegularExpression(pattern: pattern)
let testString = #"""
HTTP/1.1 302 Moved Temporarily Date: Wed, 27 May 2015 09:36:27 GMT Location: /oauth/liferay_redirect.php?oauth_token=23893f24b76534572041d29cfdf11565&portlet_session=8643FDCF76E2212A38316432F4ED8CA7 Content-Length: 0 Vary: Accept-Encoding,User-Agent Content-Type: text/plain; charset=UTF-8
"""#
let stringRange = NSRange(location: 0, length: testString.utf16.count)
if let firstMatch = regex.firstMatch(in: testString, range: stringRange) {
let result: [String] = (1 ..< firstMatch.numberOfRanges).map { (testString as NSString).substring(with: firstMatch.range(at: $0)) }
print(result)
} else {
print("No matches were found.")
}
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