我有一个有5列的大桌子,我需要删除第4和第5个。
示例:
<td><a href="http://sk.wikipedia.org/wiki/%C3%81belov%C3%A1" title="Ábelová">Ábelová</a></td>
<td><a href="http://sk.wikipedia.org/wiki/Okres_Lu%C4%8Denec" title="Okres Lučenec">Lučenec</a></td>
<td><a href="http://sk.wikipedia.org/wiki/Banskobystrick%C3%BD_kraj" title="Banskobystrický kraj">Banskobystrický kraj</a></td>
<td></td>
<td>Ábelfalva</td>
到此:
<td><a href="http://sk.wikipedia.org/wiki/%C3%81belov%C3%A1" title="Ábelová">Ábelová</a></td>
<td><a href="http://sk.wikipedia.org/wiki/Okres_Lu%C4%8Denec" title="Okres Lučenec">Lučenec</a></td>
<td><a href="http://sk.wikipedia.org/wiki/Banskobystrick%C3%BD_kraj" title="Banskobystrický kraj">Banskobystrický kraj</a></td>
在每一行。
答案 0 :(得分:1)
并使用类似
的XPath/html/body/drill/down/to/your/table/tr/td[position() = 4 or position() = 5]
如何从DOMDocument
删除节点之前已经无数次被回答过。请参阅my previous answers on how to do that with DOM部分内容或使用search function。
答案 1 :(得分:0)
preg_replace可以是一个解决方案,您也可以将文件加载到SimpleXML对象中,然后使用带计数器的简单循环,并在tr中显示非第4和第5的所有td。 你也可以使用preg_split,但这很难。 所以SimpleXML是IMO的最佳方式。祝你好运
答案 2 :(得分:-1)
使用preg_replace的模式与td
匹配,但不包含a
,并替换为空字符串。或DOM扩展名。
答案 3 :(得分:-1)
你确实可以使用preg_replace,但我建议使用匹配4和5的正则表达式。&lt; td&gt;。*&lt; / td&gt;子。一个不太优雅(但更简单,如果你不知道正则表达式)解决方案多次使用strpos,使用一个结果作为下一个的偏移量。