小编典典

如果不使用regexp,HTML解析如何工作?

html

我每天看到很多问题,询问如何解析或从HTML字符串中提取内容,第一个答案/评论始终是“不要使用RegEx解析HTML,以免感到愤怒!”
(有时会省略最后一部分)。

这对我来说很混乱,我一直认为,一般而言,解析任何复杂字符串的最佳方法是使用正则表达式。那么HTML解析器如何工作?它不使用正则表达式进行解析。

使用正则表达式的一个特殊论点是,并不总是存在解析替代方法(例如JavaScript,其中DOMDocument不是普遍可用的选项)。以jQuery为例,使用正则表达式将HTML字符串转换为DOM节点似乎可以很好地进行管理。

不确定是否要继续进行此操作,这是一个真正的问题,我想得到回答,而并不是要成为讨论话题。


阅读 267

收藏
2020-05-10

共1个答案

小编典典

通常通过使用令牌处理程序。HTML5规范草案具有用于处理“现实世界HTML”的广泛算法。

2020-05-10