PHP:从HTML代码字符串中提取特定标记

时间:2012-07-09 13:48:17

标签: php html-parsing

首先,我将提到我关于问题的第一个问题here

我需要的是从HTML字符串中获取数组中的所有<ul>列表,这样我就可以通过将每个列表分成两半(从一个中创建两个列表)来操作它们,以便将每个列表显示在两列中漂浮他们。例子:

来源:

Lorem ipsum dolor et amet...<br />
<ul>
    <li>List item 1</li>
    <li>List item 2</li>
    <li>List item 3</li>
    <li>List item 4</li>
</ul>
Lorem ipsum dolor et amet...<br />
NEXT UL LIST GOES HERE... etc..

需要的结果:

Lorem ipsum dolor et amet...<br />
<div style="overflow:hidden;">
  <ul>
    <li>List item 1</li>
    <li>List item 2</li>
  </ul>
  <ul>    
    <li>List item 3</li>
    <li>List item 4</li>
  </ul>
</div>
NEXT UL LIST GOES HERE... etc..

我知道CSS浮动<li>,但这会以错误的顺序给出列表,如:

Lorem ipsum...
list item 1     list item 2
list item 3     list item 4
list item 5     list item 6

什么是不需要的。所以我决定解决方案可以将每个列表分成两半(从一个中创建两个列表)然后浮动它们。

正如您在上一个问题中所看到的,我的第一个想法是使用preg_match_all() PHP函数来实现。但它不是很好。并且由于用户建议使用正则表达式来解析HTML是一个坏主意所以:

有人可以通过使用DOMDocument或任何其他方法解释如何执行此操作吗?如何从html内容中提取列表,以便我可以根据需要使用它们进行操作?

0 个答案:

没有答案