在 Adob​​e CRX 中查询 XPath

Query XPath in Adobe CRX

我正在 Adob​​e CRX 中执行 XPath 查询,我正在尝试查找包含字符串 'Xbox Live' 的节点列表。我得到的是同时包含 'Xbox' 和 'Live' 的节点。我想知道要获得与我的字符串完全匹配的查询是什么。

当前 XPath 查询:/jcr:root/content//*[jcr:contains(., 'Xbox Live')] order by @jcr:score

我要返回的内容示例:

我不想返回的内容示例:

你的 xpath/xquery 很好,应该 return 元素包含确切的短语 "Xbox Live",假设 Adob​​e CRX 有不错的 xpath 1.0 实现。

可能的问题是,通过在 contains() 中使用 .,将评估所有后代文本节点的串联。例如,以下 parent 元素也被认为与 contains(., 'Xbox Live') 谓词匹配:

<parent>Xbox <child>Live</child></parent>

如果要对单个文本节点和 return 匹配文本节点的父元素求值 contains(),请改为尝试以下操作:

/jcr:root/content//text()[jcr:contains(., 'Xbox Live')]/parent::* order by @jcr:score