问题标签 [xpath-2.0]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
3 回答
7057 浏览

xml - 使用 xquery FLWOR 表达式查找多个“where”限制

我正在努力寻找在休斯顿从事项目工作的员工,但该项目所在的部门不在休斯顿。我试图在这个FLWOR 表达式示例之后为表达式建模,但查询不返回任何内容,它应该返回结果。

编辑:这是输入

0 投票
2 回答
2288 浏览

xml - XSLT:检查是否在节点列表中找到节点

我需要检查节点列表中是否存在特定值。

现在我正在使用 for-each ,我认为这效率不高。

我想一口气搞定。我怎样才能?

0 投票
1 回答
344 浏览

xml - 使用 XSLT 基于字符串模式自动创建 xml 模板

我在下面的模式中有字符串

作者~时间~assignedAuthor~assignedAuthor/id~assignedAuthor/addr~assignedAuthor/telecom~assignedAuthor/assignedPerson/name~

第一个元素一直是根元素(在上面的字符串模式中它是author),其余的都是用字符“~”删除的子元素。我想通过使用上面的字符串模式使用 XSLT 2.0 创建 XML,并且我想在下面生成 XML。

我可以为此提供可能的解决方案吗?

0 投票
4 回答
1303 浏览

xml - 如何使用 xslt 2.0 选择当前流程元素的以下兄弟姐妹,直到它满足 for-each 中的条件?

这是我的 XML 文档(小片段)。

在这里,我想选择第一个<w:p>using for-each 语句的下一个兄弟,直到它遇到下一个<w:p>具有其<w:pPr><w:pStyle w:val="Heading1"/></w:pPr>.

例如,首先<w:p>我想只选择接下来的三个兄弟姐妹。(即,第 2 段、第 3 段并包括表格信息)。因为,第 4 个<w:p><w:pPr><w:pStyle w:val="Heading1"/></w:pPr>.

<w:p>如果是当前节点,则第 4 个情况相同。然后我只想选择 5th <w:p>

我不知道如何在 for-each 中指定这个条件。所以,你能指导我得到这个......

我需要的输出是这样的:

0 投票
0 回答
245 浏览

xpath - 通过输入文本文件中的绝对位置查找节点的 Xpath

有没有办法通过输入文本文件中的绝对位置找到 XML 节点的 XPath?我看到 sax 解析器有接口 Locator ,但它只理解列和行位置而不是绝对位置。

0 投票
2 回答
948 浏览

xml - 在 xpath 中计算子项的特殊文本

我有这个 xml 文档:

我想选择有 2 个子节点的节点,文本 =“SALAM”(该节点可以有任意数量的子节点,但它必须有 2 个子节点,文本 =“SALAM”)。例如在上面的 xml 中,xpath 查询必须返回 CCC标签。请帮我。谢谢

0 投票
3 回答
707 浏览

xml - XPath - 从具有最高节点值的父节点中提取值

这是我的 XML 片段

我试图从具有最高数字摘要日期值的财务摘要标签内的收入节点中提取节点内容。

此 xpath 返回正确 = 1249164523

此 xpath 返回正确 = 20111231

但是,当我尝试将两者结合起来时,什么都没有返回

有什么我想念的吗?这个谜题的解决方案是什么?

额外信息:我尝试包含而不是'='但没有运气

0 投票
1 回答
1130 浏览

regex - 带有负数组的正则表达式字符类减法

这个问题与正则表达式(regex)中的字符类减法有关。我指的是 XPATH 2.0 第二版的正则表达式风格。

当字符类减法中有负数组时,减法运算符 (-) 之前是否出现过?还是在负组运算符 (^) 之后?

XPATH/XML 模式规范的文本如下。但在我看来,它读起来模棱两可。

对于任何·正字符组·或·负字符组·G,以及任何·字符类表达式·C,GC 是一个有效的·字符类减法·,标识 C(G) 中所有不在 C(G) 中的字符的集合C(C)。

更具体地说,请考虑以下三个正则表达式:

  1. [^abc-[广告]]
  2. [^abc-[^ad]]
  3. [abc-[^ad]]

与干草堆文本匹配:

  • abcdef

什么是可能的匹配文本(第一个和后续)?

0 投票
1 回答
1030 浏览

xslt - xsl:matching-substring 总是返回“false”

我正在尝试编写一个从 XML 文件(即 www.example.com)中的 URL 文本获取域名的函数。

这个函数总是返回false。我不确定我在这方面缺少什么。

0 投票
2 回答
4078 浏览

position - 在 xpath 表达式中引用当前节点的位置

(注意:这篇文章已经过编辑以显示特定的用例。见底部。)

我想在 xpath 表达式(其中上下文发生变化)中使用当前节点的 position() 值。不幸的是,我没有看到任何简单的方法可以做到这一点,因为 current()/position() 似乎总是等于 1。

[我认为这是因为 current()/position() 说“节点 current() 在...的上下文中的位置是什么......仅包含 current() 的单节点集。]

具体来说,假设我有一个节点序列 $seq,我想返回序列 ($seq[n]) 中的第 *n* 个节点,其中 n 等于 position() 的当前值(即在评估语句之前的 position() 的值)。

显然,$seq[position()] 不起作用,因为它会扩展为 seq[position() = position()],返回整个序列。

$seq[position(current())] 是乱码。

我唯一能找到的似乎可行的是

我认为有一个更简单的方法。

编辑 有人要求我给出一个更具体的例子来说明我正在尝试做的事情。实际上,我发现第一个人的答案足以满足我的需求,尽管并不比我自己想出的简单得多(“for $pos in position() return $correctOrder[$pos]”选项)。

这是实际情况:我有一组“会话”节点,每个节点都有一个@startTime 属性。我想找出与@startTime 属性相关的哪些是无序的,或者如果输入文档的节点由@startTime 正确排序,至少它们不在正确的位置。

这只是在每个会话节点上执行的众多测试之一。

我想要做的是创建一个具有正确顺序的节点的序列,并将文档排序序列中的第 n 个元素与正确排序序列中的第 n 个元素进行比较。

像这样的东西:

<---- 大量的各种测试---->

<--- 许多其他测试----->