xml - Powershell如何检查xml对象中的文本内容是否为空
问题描述
使用这样的 xml:
<parent>
<child1>my value</child1>
<child2></child2>
</parent>
我需要检查子节点内容是否不为空。这是我的代码:
[xml]$xml = Get-Content my.xml
$xml.SelectNodes('//parent/*') | ForEach-Object {
if ($_) {
Write-Host $_.name
}
}
预期的输出是
child1
相反,我得到了两个:
child1
child2
我应该如何更改 if 行?
谢谢。
解决方案
尝试改变
$xml.SelectNodes('//parent/*')
至
$xml.SelectNodes('//parent/*[text()]')
看看它是否有效。
推荐阅读
- python - PyTorch:PyTorch 中的 numpy.linalg.multi_dot() 等价物是什么
- python - Odoo 14:在树视图中添加部分功能
- android - 在颤振中在android中实现人脸ID
- javascript - 事件侦听器仅附加到循环中的最后一个条目
- javascript - React-router-dom:History.push 连接路径并且不会重新路由应用程序
- java - 无法在 Android Studio 中访问 XML 表单主活动
- javascript - 使用 xlsx 数据创建网络。html 的
- javascript - 如何在 Redux 中使用单个订阅者从 reducer 访问多个返回
- excel - 我遇到了一个公式 =SUMIFS(V2:Z2,L2:P2,">"&0)
- prisma - 无法加载有效的 Prisma 配置