我有一段HTML,我想用Nokogiri解析,但我不知道它是一个完整的HTML文档(带有DOCTYPE等)还是一个片段(例如只是一个带有一些元素的div)
这对Nokogiri来说有所不同,因为它应该使用#fragment来解析片段,而使用#parse来解析完整的文档。
有没有办法确定给定的文本片段是片段还是完整的HTML文档?
丹尼斯
答案 0 :(得分:2)
取决于您的网页是如何被删除的,但
/^(?:\s*<!DOCTYPE)|(?:\s*<html)/
应该适用于大多数情况。
答案 1 :(得分:0)
最简单的方法是查找强制<html>
标记,例如使用正则表达式/<html[\s>])/
(允许属性)。
这足以解决您的问题吗?