import Foundation
let pattern = #"\".*?(hotelscombined\.com).*?\""#
let regex = try! NSRegularExpression(pattern: pattern, options: [.caseInsensitive, .dotMatchesLineSeparators])
let testString = #"<p>We had original plans to stop in <strong>Savannah</strong> for a night, but it was so close to Charleston that we decided to just top there for a few hours for lunch and a look and then drive the other few hours to Jacksonville.</p> <p>We started fairly late in the morning as we took the kids to a playground to expend their energy first thing in the morning. After half an hour of so of playing pirates we all jumped into the car to Savannah.</p> <p>In Savannah <strong>we ate at the coolest Pirate House restaurant</strong> that was built in the 1700�s. We posted a postcard and then bounced back into our mini van for the drive to <strong>Jacksonville</strong>.</p> <p>Drive was pretty uneventful with one amazing bridge and crossing over the border into Florida was exciting too.</p> <p>We realized we�d <a title="Where to stay when you are road tripping East Coast USA" href="/">booked a hotel at the actual airport</a>, but it was super cheap and had nearby food so we ate, then put the kids to bed. <em><a href="http://www.hotelscombined.com/Hotel/Jacksonville_Airport_Hotel.htm" target="_blank">For the latest prices at the Hilton click here. </a></em></p> <p><img style="display: block; margin-left: auto; margin-right: auto;" src="/files/" alt="DSC07623.jpg" width="700" height="465" /></p> <p> </p>"#
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