我有一个像这样的XML文件:
<tr class="station">
<td class="realtime">
<span>
15:11
</span>
</td>
</tr>
<tr class="station">
<td class="clock">
15:20
</td>
</tr>
<tr class="station">
<td class="clock">
15:30
</td>
</tr>
<tr class="station">
<td class="realtime">
<span>
15:41
</span>
</td>
</tr>
我想用php中的xpath解析它。 xml经常更新和解析
我总是想第一次(在这种情况下是15:11)
问题是它不确定周围的标签是否是“时钟”或“实时”类的td
如果有一个如此周围的实时,那么内部就有一个span标签。否则不是。
实际上,它始终是信息所在的第一个“站”级标签,这很重要。
那么可以告诉xpath只在这个标签内进行评估吗?
在xpath中有这么好的方法吗?
(我的英语不好)
答案 0 :(得分:2)
事实上,它始终是第一位的 “站” - 类标签中的 信息是重要的。它就是这样 可以告诉xpath 在这个标签内评估?
使用这个良好的输入源:
<table>
<tr class="station">
<td class="realtime">
<span>
15:41
</span>
</td>
</tr>
<tr class="station">
<td class="clock">
15:20
</td>
</tr>
<tr class="station">
<td class="clock">
15:30
</td>
</tr>
<tr class="station">
<td class="realtime">
<span>
15:41
</span>
</td>
</tr>
</table>
这个XPath表达式:
/table/tr[@class='station'][1]/td
注意:只需选择所需的元素,然后使用正确的DOM API方法获取字符串值。是否存在span
元素并不重要。
如果你想......
/table/tr[@class='station'][1]/td//text()