我需要一个表格的正则表达式,你可以在其中获得“thead / tr / td”,tbody / tr / td,tbody / tr / td / span和tbody / tr / td / a的内容。但不是图像
<table>
<thead>
<tr>
<th>Title1</th><th>Title2</th>
</tr>
</thead>
<thead>
<tr>
<td>Date1</td>
<td><span>Date 2</span></td>
</tr>
<tr>
<td><a href="#">Date3</a></td>
<td><img src="image.png"></td>
</tr>
</thead>
</table>
我尝试过:
$selector = $xpath->query('//table')->item(0);
$query1 = '/*[self::tbody or self::thead]/tr/[self::th or self::td][not(descendant::img)]/[self::* or self::a or self::span]';
$resultado1 = $xpath->query($query1,$selector);
答案 0 :(得分:0)
要选择除唯一内容为th|td
元素之外的所有img
元素,或为空,请尝试
//*[self::td|self::th][node()[not(self::img)]]
如果这不是您的要求,则必须更清楚地解释该要求。例如。如果td
包含a|span
本身包含img
,或者td
同时包含a|span
和{{img
,您想要做什么? 1}}作为兄弟姐妹。