提问人:galacann 提问时间:11/25/2014 最后编辑:Alan Mooregalacann 更新时间:10/6/2015 访问量:1507
Swift:解析 HTML 的最快方法
Swift: fastest way to parse HTML
问:
我有一个很大的源代码文件,我需要从中解析一些特定的文本。我想尽快完成它。在 Swift 中执行此操作的最快方法是什么?这些都是我能想到的选择?
使用第三方字符串函数库 - 我已经尝试过了。它运行良好,但我认为与其他低级方法相比,这要慢得多,除非有一些专门针对 Swift 的特别快的方法。
使用第三方 HTML 解析器。我已经研究了一些,但我不确定它们是否适合我的需求。在我继续之前,我只想知道这些是否通常更快,是否有任何值得注意的快速,以及我是否能够调整它们以从源代码中获得我想要的东西。
使用 String 或 NSString。据我了解,使用 String vs NSString 应该不会在速度上产生任何差异。我对这种方法很满意,而且它比其他一些方法的水平要低,所以我应该期待相当快的性能吗?
使用正则表达式。有人告诉我,由于这些是较低级别的,理想情况下它们应该是最快的。我以前使用过正则表达式,但在 ios 中没有。使用 NSRegularExpression 进行字符串解析是否容易,速度更快?
谢谢!
答:
在研究您的问题时发现了此链接:http://benedictcohen.co.uk/blog/archives/74
作者解释了@CodaFi建议的旧方法,但最后有一个相关的更新,你应该看看:
解析 HTML 的最简单方法是将其视为 XML 并使用 NSXMLParser 中。iOS 附带 LibTidy,它能够修复 众多的加价罪过。使用 LibTidy 创建干净的 XML 并传递 此 XML 转换为 NSXMLParser。仅使用上述方法,如果它是 无法使用 NSXMLParser。
那么也许选项 4 或 5 供您查看?
评论