xpath 表达式中的属性和 count()

2023-12-05

给定以下 XML 文件:

<a m="1">
    <b n="1" o="2">
        <c p="3">3</c>
        <d/>
    </b>
    <b n="1" o="2">
        <c p="3">3</c>
        <d q="3">
            <e r="2">2</e>
        </d>
        <f s="1"/>
    </b>
</a>

我怎样才能找到以下表达式:

1. count(/*/*/*)  =  5
2. count (/*//*)  = 6
3. count (/*/*//@*) = 4

我在 Java 中使用这些 xpath 表达式运行了 xml 文件,但我不明白为什么答案是 5,6,4 。

有人可以解释一下如何通过理解命令的实际概念来计算上述表达式(不使用java代码)/*/*/* and /*//* and /*/*//@* ?

非常感激


/*/*/*

这将选择所有“顶部元素的孙子元素——它们是:c, d, c, d

/*//*

这将选择顶部元素的所有后代元素:b, c, d, b, c, d, e, f

/*/*//@*

这将选择顶部元素的子元素或其后代的所有属性:n, o, p, n, o, p, q, r, s.

因此,产生的计数必须分别为:

4, 8, 9

基于XSLT的验证:

<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
 <xsl:output method="text"/>

 <xsl:template match="/">
   <xsl:value-of select="count(/*/*/*)"/>
=========
   <xsl:value-of select="count(/*//*)"/>
=========
   <xsl:value-of select="count(/*/*//@*)"/>
 </xsl:template>
</xsl:stylesheet>

当对提供的 XML 文档执行此转换时(绝不,never出示带有图片的文档!!!):

<a m="1">
 <b n="1" o="2">
   <c p="3">3</c>
   <d/>
 </b>
 <b n="1" o="2">
   <c p="3">3</c>
   <d q="3">
     <e r="2">2</e>
   </d>
 </b>
 <f s="1"/>
</a>

计算 Xpath 表达式并将其结果复制到输出:

   4
=========
   8
=========
   9
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

xpath 表达式中的属性和 count() 的相关文章

  • 使用 LIMIT/OFFSET 运行查询并获取总行数

    出于分页目的 我需要使用以下命令运行查询LIMIT and OFFSET条款 但我还需要计算该查询将返回的行数 而不需要LIMIT and OFFSET条款 我想运行 SELECT FROM table WHERE whatever ORD
  • 在 Sql Server 中启用 DTD 支持

    我有各种 xml 文档需要存储在数据库列中 这些文档包含对 DTD 的引用 并且 SQL Server 不会导入 xml 因为它存在安全风险 如何在数据库上启用 DTD 支持 以便它可以让我插入 xml 内容 你必须CONVERT首先 MS
  • Android 背景 + 文本 + 按钮图标

    我想要一个图像设置为文本的背景 并在文本的左侧设置一个图标 在iPhone中非常简单 但不知道如何在Android上做到这一点 调整按钮的大小并保持图标 文本的位置和距离正确 iPhone 安卓我有这个 xml代码是
  • Chrome 扩展:以编程方式检查元素和“复制 xpath”或“复制 css 路径”[关闭]

    Closed 这个问题需要多问focused help closed questions 目前不接受答案 我想知道是否可以以编程方式访问一个元素 比如说我悬停在其上的当前元素 并执行相当于右键单击它 转到 检查元素 在 元素 选项卡中选择它
  • 创建自定义弹出对话框菜单

    我目前正在尝试在单击菜单按钮时实现弹出菜单 如下图所示 我尝试了 popupwindow 方法 但无法实现确切的情况 这就是我正在尝试的方式 private View OnClickListener showPopupWindow retu
  • 使用 NSXMLParser 在 Swift 中解析分层 XML

    我确实在以我实际可以使用的形式获取分层 XML 值时遇到问题 因此我们将不胜感激 我对 Swift 和 IOS 开发还很陌生 所以说实话我并不完全理解解析器 但我希望在这之后我能理解 下面是我尝试解析的示例 XML 它来自肥皂网络服务 连接
  • DTD 与 XSD 定义的 XML 语言的范围

    下列命题是否成立 对于每个 DTD 都有一个定义完全相同的语言的 XSD 并且对于每个 XSD 都有一个定义完全相同的语言的 DTD 或者换句话说 任何 DTD 定义的语言集合正是任何 XSD 定义的语言集合 稍微扩展一下这个问题 XML
  • 在代码后面绑定属性

    我有 WPF 应用程序和其中的一个窗口 让我们在我的 xml 中添加这样的内容
  • 如何使用 Java 从 XML 文件中提取数据?

    我的 XML 文件
  • 将 Java 对象图保存为 XML 文件

    将任意 Java 对象图保存为 XML 文件 并能够在以后重新水合对象 的最简单易用的技术是什么 这里最简单的方法是序列化对象图 Java 1 4 内置了对 XML 序列化的支持 我成功使用的一个解决方案是 XStream http x s
  • 由带有换行符的 DOMDocument 生成的 XML

    我正在使用 PHP DOMDocument 创建 XML 文件 并且这些 XML 文件不能包含换行符 但是当我使用该方法时 保存 XML 生成的 XML 在定义和初始标记之间有一个换行符 如下所示
  • XmlDocument Save 使文件保持打开状态

    我有一个简单的 C 函数 可以创建一个基本的 XML 文件并保存 private void CreateXMlFile string Filename string Name string Company XmlDocument doc n
  • XSD“版本”属性语义

  • Android 矩形有两种不同的颜色

    如何通过使用两种不同颜色和阴影来创建矩形形状 就像上图一样 Please create a drawable file and put the below code in it
  • 如何使用 Javascript 将 HTML 表单数据输出到 XML 文件?

    我目前正在尝试弄清楚如何将 HTML 表单数据输出到 XML 文件 这是我过去几天一直在研究的一个想法 目的是创建一个用于 Windows 7 安装的 autounattended xml 文件 目前我的 HTML 如下
  • 使用 XPath 将 URL 查询字符串解析为参数映射

    将 URL 查询字符串解析为最易读的方法是什么 param value XSLT XPath 3 0 中的映射 注意 这是中描述的函数的反函数使用 XPath 从参数映射构建 URL 查询字符串 https stackoverflow co
  • Microsoft EWS 推送通知响应消息

    目前 每当创建新的日历事件时 我们都会使用来自 Microsoft Exchange Web 服务的推送通知来调用我们的服务 一开始这似乎工作正常 我们正在收到验证消息并回复
  • python lxml 使用iterparse编辑并输出xml

    我已经在 lxml 库上摆弄了一段时间了 也许我没有正确理解它 或者我错过了一些东西 但我似乎无法弄清楚在捕获某个 xpath 后如何编辑文件并且然后能够在逐个元素解析时将其写回到 xml 中 假设我们有这个 xml 作为示例
  • 安卓。 onEditorAction 从未被调用

    我正在尝试捕捉从屏幕上移除键盘的事件 并且我正在使用OnEditorActionListener班级 然而 其onEditorAction方法永远不会被调用 这是我的 XML 格式的 EditText
  • 如何在动态创建的reportviewer报表的每一页上显示标题

    我动态创建报告 即我无法打开设计器 RDLC 并修复它 我创建一个表并通过数据集填充它 获取 XML 文件并将其导出为 PDF 文件 但即使我写 string deviceInfo

随机推荐

  • $(document).ready 相当于没有 jQuery

    我有一个使用的脚本 document ready 但它不使用 jQuery 中的任何其他内容 我想通过删除 jQuery 依赖来减轻它的负担 我怎样才能实现我自己的 document ready不使用 jQuery 的功能 我知道使用win
  • 使用 Webdriver 的 Eclipse for Java 中的字符编码问题

    我目前正在使用 Eclipse 和 TestNG 通过 java 运行 selenium webdriver 我正在使用 Jexcelapi 从 OpenOffice 电子表格 导入数据 以将我正在测试的网站上的字符串与电子表格中的值进行比
  • 集群环境上的 Spring Batch - Websphere

    我确实设置了一个 Spring Batch 作业 它在单个 JVM 上运行良好 但我需要将其部署到集群环境中 我正在使用 Spring 任务调度程序来安排工作 有没有什么方法可以在集群环境中做到这一点 如果一个节点出现故障 另一个节点应该将
  • Facebook cURL 以我身份发帖?

    创建 Facebook 应用程序 使用 cURL 从应用程序发布消息 但它似乎是由我发布的 我怎样才能从应用程序发布 这是我的 cURL attachment array access token gt token message gt m
  • 由于循环导入而无法导入 opencv

    当尝试在 jupyter 实验室笔记本中导入 opencv 时 import cv2 我收到此错误 AttributeError 部分初始化的模块 cv2 没有属性 gapi wip gst GStreamerPipeline 很可能是由于
  • 如何在 Android 上创建 .csv

    我的目标是从表格创建 csv 文件 以打印报告 然后我可以将此 csv 文件存储到我的 SD 卡中 我已经提到了一些与此类似的问题 但他们要求提供一个 jar 文件 有没有其他方法可以不用jar文件来集成呢 在组件 au com bytec
  • MVVM - WPF DataGrid - AutoGenerateColumn 事件

    我目前正在仔细查看出色的Laurent 的工具包和我有以下问题 从 Blend 4 开始 我为 Loaded 事件添加了一个 EventTrigger 在我的 ViewModel 中我有以下内容 public RelayCommand rc
  • 内部录音程序[关闭]

    Closed 这个问题需要多问focused 目前不接受答案 注意 这不是需要使用麦克风的东西 我想在内部录制音频 我想用 C 或 Java 编写一个程序来记录发送到计算机扬声器的音频数据 最终产品将允许用户点击 录制 按钮 当前正在播放的
  • For 循环影响递归变量

    我正在尝试使用递归创建一个函数 该函数可以从帕斯卡三角形内的任何序列中获取任何项 基本上使用自然数作为第一个集合的加法序列 然后使用之前的每个集合作为加法序列 始终从 1 开始 单纯形数 我目前正在学习 JavaScript 并正在做我已经
  • 自定义hugo学术主题中的“关于”小部件

    我通过 RStudio blogdown 使用hugo academic 主题来构建我的网页 示例页面在这里 https themes gohugo io theme academic 我想添加第二份非学术清单兴趣低于学术的 这可能吗 在配
  • 将字符串中的整数提取到数组中

    我需要提取integers from a String到一个数组中 我已经得到了integers 但我无法将它们放入数组中 public static void main String args String line First numb
  • 如何根据条件和参数数量启用结构体?

    我想创建一个元函数 如果向其传递超过 1 个参数 则返回特定类型 如果仅向其传递一个参数 则返回基于条件的另一种类型 该条件是任意的 因此需要enable if或类似的东西 但对于这个例子 我只是将其作为类型比较 让我们将其简化为以下内容
  • 估计全局辐照度的漫射和直接分量

    我正在寻找分离全局辐照度的漫射和直接分量 并找到了 Erbs 模型来在 pvlib 中执行此操作 请参阅pvlib irradiance erbs 但是 我得到了非常奇怪的结果 我预计直接法向辐照度 DNI 会低于全局水平辐照度 GHI 或
  • 找不到-lpthread

    我正在尝试交叉编译 samba 服务器 config 工作得很好 但是当我想用 make 构建时 提示说 Linking shared library bin libsmbclient so 0 opt qnx630 host linux
  • Powershell Import-CSV 如何跳过直到基于字符串的特定行?

    你好 我的 CSV 文件是这样的 BEGINPROPERTIES total candidate create 2 duration 0 00 00 433 internal audit session id 1397055568 inte
  • 使用正则表达式的codingbat wordEnds

    我正在尝试解决wordEnds来自codingbat com使用正则表达式 给定一个字符串和一个非空单词字符串 返回由字符串中该单词每次出现之前和之后的每个字符组成的字符串 忽略单词前后没有字符的情况 如果字符位于两个单词之间 则可能会包含
  • 将文件上传到远程服务器

    我需要将文件从驻留在 Web 服务器中的 ASP NET C 页面上传到远程服务器 我设法使用以下代码从本地主机将文件上传到远程服务器 string serverPath xx xxx xx xx Folder FileUpload1 Fi
  • 使用索引或位图索引扫描对时间戳进行高效的 PostgreSQL 查询?

    在 PostgreSQL 中 我的日期字段上有一个索引tickets桌子 当我将领域与now 查询非常有效 explain analyze select count 1 as count from tickets where updated
  • 多个 Mobilefirst-Server 工件并发部署

    我使用批处理过程来部署 MFP v7 工件 wlapp 和适配器 该过程基于 worklight ant deployer jar 中定义的标准 ant 任务 MFP 环境在 WAS 单元上运行 并由管理多个 WLRuntime 的单个 A
  • xpath 表达式中的属性和 count()

    给定以下 XML 文件 a b b a