Можно ли взять только часть строки HTML, которую я получил, передавая URL?
Пример кода ниже:
let myURLString = "https://myUrl.something"
guard let myURL = NSURL(string: myURLString) else {
print("Error: \(myURLString) doesn't seem to be a valid URL")
return
}
do {
let myHTMLString = try String(contentsOf: myURL as URL)
let htmlString = String(myHTMLString)
print("HTML: \(myHTMLString)")
} catch let error as NSError {
print("Error: \(error)")
}
Я хочу взять то, что находится внутри тега <h3 class="post-title">
до </h3>
.
Я знаю, что мне следует использовать регулярные выражения, но я не знаю, как правильно их настроить. Я пробовал что-то вроде этого:
let myURLString = "https://www.fvgtech.it/category/podcast/"
guard let myURL = NSURL(string: myURLString) else {
print("Error: \(myURLString) doesn't seem to be a valid URL")
return
}
do {
let myHTMLString = try String(contentsOf: myURL as URL)
let htmlString = String(myHTMLString)
if let match = htmlString.range(of: "(<h3.+)", options: .regularExpression) {
print("Found",htmlString.substring(with: match))
}
print("HTML: \(myHTMLString)")
} catch let error as NSError {
print("Error: \(error)")
}
Но он печатает только <h3 class="post-title">
, а не то, что посередине. Заранее спасибо!