xml - XML XPATH 属性
问题描述
谁能帮我只用一种 xpath 语法获取 Z NAMES 数据?
<fields>
<field name="Z01NAME">Romulo</field>
<field name="Z02NAME">Marco</field>
<field name="Z03NAME">Tan</field>
<field name="X01NAME">Joseph</field>
<field name="X02NAME">EXB</field>
</fields>
我试过/fields/field[@name="Z*NAME"]
了,但它不起作用。感谢帮助!
解决方案
XPath 1.0不支持通配符或正则表达式。您可以使用starts-with()
, 函数解决问题。要实现ends-with()
功能,请使用@IanRoberts' answer。所以,最后的表达式是
/fields/field[starts-with(@name,'Z') and substring(@name, string-length(@name) - string-length('NAME') +1) = 'NAME']
推荐阅读
- django - 当 POST 参数中已经存在相关模型的 id 时,Django REST Framework 会询问它
- java - 获取 ConverterNotFoundException
- triggers - 带有旧文档和新文档的 Azure Cosmos DB 文档更改触发器?
- thumbor - 如何使用拇指从文件夹本地加载图像
- c# - 在满足预期条件后执行一些操作
- azure - Azure 活动日志
- ios - Swift 5 Xcode 10.3 如何设置背景透明
- javascript - 如何生成我进入表格的 json 响应?
- java - 在 Webview 中调用 onBackPressed 方法时,它会停止缓存
- python - 如何在熊猫的同一条船上获得连续安装的最旧部分安装?