Я пытаюсь определить похожее содержимое между несколькими наборами HTML-кода и опустить те, которые похожи.Например, мне даны два следующих набора HTML-кода:
<code>//First set
<div class="x-apple-signature"><pre style="font-family: 'SFNSText','Helvetica Neue', Helvetica, sans-serif; font-size: 15px; white-space: pre-wrap; word-wrap: break-word;" data-mce-style="font-family: 'SFNSText','Helvetica Neue', Helvetica, sans-serif; font-size: 15px; white-space: pre-wrap; word-wrap: break-word;">Thanks & Regards,
Tony Stark
Stark Industries
// Второй наборСпасибо и С уважением,
Тони Старк
Stark Industries
По сути, оба набора HTML-кода печатают одинаковое содержимое при отображении на UIWebView
, но с другим шрифтом,и поэтому я хочу опустить один из них.При загрузке в webView
они пишутся примерно так, с хорошо написанными разрывами строк:
Thanks & Regards,
Tony Stark
Stark Industries
Я использую Kanna
при разборе HTML, ищите content
HTMLи проверьте, является ли содержимое идентичным.К сожалению, некоторые случаи до сих пор проскальзывают, как те, что выше.Код и результаты следующие:
//Check for identical HTML contents
var dictionary = [String: HTMLObject]()
allHtml.forEach { (html) in
let doc = try? HTML(html: html, encoding: .utf8)
if var content = doc?.body?.content {
content = content.trimmingCharacters(in: .whitespacesAndNewlines)
if dictionary[content] == nil {
dictionary[content] = html
} else {
allHtml.removeObject(html)
}
}
}
//Results of the printed content from the above HTML
//First set
Thanks & Regards,\r\nTony Stark\r\nStark Industries
//Second set
Thanks & Regards,Tony StarkStark Industries
Я тоже пробовал doc?.body?.text
, но дал очень похожие результаты.У кого-нибудь есть совет?