import Foundation
let pattern = #"<link.*(href=".*?\/abcd\.css")[^>]*>"#
let regex = try! NSRegularExpression(pattern: pattern, options: .caseInsensitive)
let testString = #"""
<html data-reactroot="" class="gr__localhost"><head><link rel="stylesheet" href="/dist/qwefqwefqwef.css" /><link rel="stylesheet" href="/dist/abcd.css" /><meta charset="utf-8"><meta name="viewport" content="width=device-width,initial-scale=1,maximum-scale=1,minimum-scale=1,user-scalable=no"><script type="text/javascript" async="" src="https://www.google-analytics.com/analytics.js"></script><script>window.g_useSSR=true;
window.g_initialData = {};</script><script>window.routerBase = "/";</script><link rel="stylesheet" href="<script src=" dist="" umi.4c8c3b87.js"vendors.f848cc19.chunk.css"=""><link
"""#
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