HTML文档比较

时间:2013-07-16 09:46:01

标签: c# html html-parsing dom

我想比较Html文档的天气,不管内部文本和属性值的不同,都有相同的排列。我只是想比较一般的标签结构。比如

<html>
<head>
</head> 
<body>
<span class="my paragraph">comparison of general tag structure of html</span>
</body>
</html>

<html>
<head>
</head> 
<body>
<span class="Mega Offer">free membership offer</span>
</body>
</html>

是相同的

<html>
<head><title>Different</title>
</head> 
<body>
<span class="my paragraph">comparison of general tag structure of html</span>
</body>
</html>

不一样,因为在标签的html结构中有一个额外的标题标签,不管内部值和属性值是否相同。

2 个答案:

答案 0 :(得分:0)

如果你愿意使用php,那么有几个函数会像preg_match那样寻找模式。您可以使用file将html文件读入数组,每个新行都是数组中的另一个条目。然后对其他html文件执行相同操作。然后你可以去搜索第一个标签(又名:以<开头的东西),然后阅读其余部分直到>。然后去另一个html文件中搜索相同的标签,计算该标签出现的次数。冲洗并重复。

答案 1 :(得分:0)

我会进入两个阶段:

第1阶段(检查是否相等):
删除标记和属性之间的所有内容,然后将结果与(不区分大小写的)字符串进行比较。

如果它们不同,也是如此:

第2阶段(找出差异):
这个阶段在很大程度上取决于你想要报告的差异,所以我不能给出具体的建议如何实现它。