【问题标题】:Xpath expression in Android for node with two child text nodesAndroid 中具有两个子文本节点的节点的 Xpath 表达式
【发布时间】:2011-11-21 01:16:13
【问题描述】:

我有一个示例 XML(Android 平台),我想知道获取文本节点的节点值的最简单和最有效的方法。

<div id="myid">
   <img src="..." width="1" height="2" alt="Text" />
   <p><strong>Unwanted text</strong>WANTED TEXT</p>
</div>

我可以使用 XPath 2.0 轻松获得它:

//div[@id='myid']//p/text() => WANTED TEXT

但在 Android 中我得到了……

//div[@id='myid']//p/text() => Unwanted text&nbsp;WANTED TEXT

但是如何在没有不需要的文本的情况下在 Android 的 XPath 中选择它?

【问题讨论】:

  • 最后,我检索到父节点并以编程方式导航到该节点

标签: android xpath htmlcleaner


【解决方案1】:

我不确定 Android 是否按预期运行。但是,请尝试这两个语句,看看它们是否返回了所需的结果。

获取第一个不是元素的节点:

//div[@id='myid']//p/node()[not(self::*)]

获取第一个文本节点:

//div[@id='myid']//p/node()[self::text()]

(请注意,我无法在 Android 上测试这些,所以我不能确定它们会返回什么)。

【讨论】:

  • 感谢您的评论 Tim,但不支持 node()。
猜你喜欢
  • 2012-02-18
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多