清理内容:从亚马逊的内容中删除标记

时间:2011-01-31 09:13:14

标签: php html regex html-parsing

我正在使用Amazon Web Service获取各种商品的产品说明。问题是亚马逊的内容包含标记,有时会破坏我的网页布局(例如未封闭的DIV等)。

我想清理从亚马逊获得的内容。我的解决方案是执行以下操作(到目前为止我的初始列表):

  • 删除不需要的标记,例如divspan等,同时保留pulol等标记
  • 从所有代码中删除所有属性(例如,某些代码中似乎有style个属性)
  • 删除多余的空白区域(例如多个空格,回车符,换行符,新标签等)

在我尝试构建我的解决方案之前,我想知道是否有人有更好的想法(或已有的解决方案)。感谢。

1 个答案:

答案 0 :(得分:1)

这是否是最好的主意:

删除多余的空格:

preg_replace('/\s+/', ' ', trim($v))

从HTML元素中删除属性:

preg_replace('/<([^\s>]+) [^>]+>/', '<$1>', $v)

删除特定元素:

preg_replace('/<\/?(div|span)[^>]*>/', '', $v)