joe*_*ker 10 xpath libxml2
<td></td><td>foo</td>
我想返回['', 'foo']但是libxml的xpath //td/text()只返回['foo'].如何找到空标签''而不是(不匹配)?
['', 'foo']
//td/text()
['foo']
''
Dim*_*hev 8
虽然@Tomalak是完全正确的,但在XPath 2.0中可以使用:
//td/string(.)
这会产生一个字符串序列 - 每个字符串包含相应td元素的字符串值.
td
因此,在您的情况下,结果将是所需的结果:
"", "foo"
Tom*_*lak 6
只要您专门选择文本节点,就不能.因为第一个中根本没有文本节点<td>.
<td>
将XPath表达式更改为时'//td',将获得两个<td>节点.在进一步处理中使用其文本值.
'//td'
归档时间:
15 年,7 月 前
查看次数:
4476 次
最近记录:
12 年,2 月 前