xquery-获取单个父元素中不为空的元素的计数

2024-01-21

请考虑以下 XML——

<div id="test">
    <p> Text sihdfaif</p>
    <p />
    <p> Text sihdfaif</p>
    <p />
    <p> Text sihdfaif</p>
    <p> Text sihdfaif</p>
    <p> Text sihdfaif</p>
</div>

现在,我想获取其中包含一些文本的 p 元素的数量。在本例中,该值=5(有 2 个“p”元素为空)

这是我想出的 XQuery——

    let $claims_main := $doc//div[@id="test"]
        let $claims := $doc//div[@id="test"]/p
        let $n := count($claims)
        where $claims_main/p != '' 
        return $n

然而,我从上面得到的结果是7,即包括空的“p”元素。

我想到的另一种选择是对所有“p”元素使用 for 循环,但在这种情况下,如何检索循环的元素总数?如果我在这种情况下使用 count,那么我只需得到 [1,1,1,1,1]- 即。每个 p 元素的计数(因为在 for 循环中,计数将针对每个“p”元素,而不是 div 本身)...


由于问题专门询问“p其中包含一些文本的元素”,这是如何获得这样的精确数量p要素:

count(/*/div/p[string(.)])

这产生了所有的数量p具有非空字符串值的元素,它们是 a 的子元素div它是 XML 文档顶部元素的子元素。

此外,如果“非空”也意味着具有非纯空白字符串值:

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

xquery-获取单个父元素中不为空的元素的计数 的相关文章

随机推荐

  • 渲染多对多字段

    我试图在模板中显示多个字段 但我得到的只是空白 我将其显示如下 for vehicle in vehicle features features li vehicle features li endfor 我的模型如下 class Vehi
  • 如何使用最新版本的 FFMPEG 在视频录制中创建时间间隙?

    我是论坛的新手 所以我希望我正确地提出了这个问题 我已经下载了最新版本的 FFMPEG 我想用它通过在其中插入时间间隙来修改现有视频 这就是我所说的时间间隔 如果我输入的视频持续 2 秒并以 FPS 10 录制 则其帧的时间戳将如下 0 1
  • 删除 apk 后,每当我启动调试时,它都会告诉我该包尚未安装

    我打开了模拟器 并使用命令提示符删除了我的应用程序 我没有关闭模拟器 然后我进入 Eclipse 并点击 调试 但没有将 apk 部署到模拟器 只是告诉我该包尚未在系统中注册 New package not yet registered w
  • gtk2hs:删除小部件后请求重新计算窗口大小

    我有一个带有三个条目小部件和一个按钮的窗口 我使用该按钮以编程方式删除其中一个小部件 问题是主窗口在被删除后不会改变其大小以适应新的布局 我可以想象我需要向主循环发送一些信号或事件 这会导致重新计算 但我一直无法找到这样的功能 这是一些示例
  • Django的bulk_create函数示例

    我试图理解 Django 中的bulk create 这是我试图转换的原始查询 for e in q msg Message objects create recipient number e mobile content batch co
  • 如何更改 TreeView 节点高度,在节点中绘制 3 条线

    我将 D7 与 TreeView 不是 VirtualTreeView 一起使用 如何更改节点高度以使用 OwnerDraw 并在节点矩形中绘制 3 或 5 或更多 行 文本 所以树应该看起来像这样 显示根节点 2 个节点 aaa 和 bb
  • 使用 PM2 运行自定义 npm 脚本

    我目前正在开发几个 Telegram 机器人 但我想将它们全部保存在同一个 git 存储库中 问题是 另一方面 我想将它们作为单独的进程运行 由于我使用的是 Telegraf 框架 因此要运行机器人 请执行以下操作 micro bot sr
  • 如何在容器内保存对不同元素的多个引用?

    考虑这个简单的例子 v Vec
  • mailchimp api 2.0通过php订阅?

    我需要一个如何通过电子邮件地址订阅 mailchimp 时事通讯的示例 请在此处查看新的 api 链接 https bitbucket org mailchimp mailchimp api php https bitbucket org
  • 两种使用局部敏感哈希查找最近邻居的算法,哪一种?

    目前我正在研究如何使用局部敏感哈希来查找最近邻居 然而 当我阅读论文和搜索网络时 我发现了两种执行此操作的算法 1 使用L个哈希表和L个随机LSH函数 从而增加两个相似文档获得相同签名的机会 例如 如果两个文档的相似度为 80 那么它们有
  • 如何将 ImageView 与底部对齐,填充其宽度和高度,并保持其长宽比?

    背景 ImageView 有各种 XML 属性来缩放其内容 以及各种允许放置视图并设置其大小的布局视图 但是 我无法弄清楚如何在某些情况下很好地缩放 imageView 一个例子是将 ImageView 放在底部 例如 frameLayou
  • 通过Java编程语言读取android中的/dev/input/event

    我想记录 Android 手机上完成的所有输入事件 将其保存在某个文件中 然后使用该文件查看用户输入在什么时间发生 AFAIK 我应该调用 dev input event 获取输入事件 请指导我如何通过 Android 活动执行相同的操作
  • 迭代 String Swift 2.0

    我正在尝试在 Swift 游乐场中编写一段非常简单的代码 var word Zebra for i in word print i 但是 我总是在第 3 行收到错误 String 没有名为 Generator 的成员 关于为什么这行不通的任
  • 如何在 TH 表标签中使用 CSS Rotate()

    我需要 CSS 专家的帮助 我正在尝试创建一个简单的 html table 其中列标题 th 标签 的文本旋转 270 度以横向显示 我在锚定标题单元格时遇到问题 因此单元格文本的最左侧部分单独与所有单元格的底部或基线对齐 th tags
  • 响应式地包裹和展开 div

    我有一组 6 个 DIV 我想根据浏览器的屏幕宽度将它们每 X 个 div 包装在一个新的 div 中 所以首先我有 div class blogItem div div class blogItem div div class blogI
  • Android VpnService - 如何检查 VpnService 是否已启动?

    我有两个使用 VpnService 类的应用程序 但同时只能有一个 VPN 连接运行 创建新接口时 现有接口将被停用 我希望新应用程序不要启动 vpnservice 以避免旧接口及其 VPN 连接被停用 所以我想在调用 startServi
  • Java POI 找不到符号 WorkbookFactory

    我正在将 HSSF 模型转换为 XSSF 我到处都会遇到一些小错误 我下载了最新的 POI 并将所有 jar 文件放入其中 并将 apache 包含在我的 java 类中 出现此错误 import org apache poi ss use
  • 当JWT过期时,本地存储中存储的JWT会自动删除吗?

    我已将 JWT 存储在用户浏览器的本地存储中 我已使用 nodejs express 将 JWT 的到期日期设置为 7 天 浏览器会检测到过期日期并自动将其从本地存储中删除吗 或者我的服务器是否必须检查 JWT 并从用户浏览器的本地存储中删
  • 在 R 中使用 rvest 抓取链接时出现空节点

    我的目标是获得 Kaggle 的所有挑战及其标题的链接 我正在使用 rvest 库 但我似乎还没有走多远 当我有几个 div 时 节点是空的 我一开始就尝试在第一个挑战中做到这一点 并且应该能够将其转移到之后的每个条目中 第一个条目的 xp
  • xquery-获取单个父元素中不为空的元素的计数

    请考虑以下 XML div p Text sihdfaif p p p p Text sihdfaif p p p p Text sihdfaif p p Text sihdfaif p p Text sihdfaif p div 现在 我