xml – scala中的简单Xpath查询
我正在尝试使用
scala运行XPath查询,但它似乎不起作用.
我的Xml看起来像(简化): <application> <process type="output" size ="23"> <channel offset="0"/> .... <channel offset="4"/> </process> <process type="input" size ="16"> <channel offset="20"/> .... <channel offset="24"/> </process> </application> 我想使用input属性检索进程,为此我使用此XPath查询: //process[@type='input'] 这应该有效,我用xpathtester验证了它 import scala.xml._ val x = XML.loadFile("file.xml") val process = (x "process[@type='input']") // will return empty NodeSeq() !!! 这个过程最终为空,它无法捕获我想要的东西.我像这样工作: val process = (x "process" filter( _ "@type" contains Text("input"))) 这更加丑陋.我原始查询不起作用的任何已知原因? 解决方法
“XPath”不应用于描述Scala标准库支持的内容. XPath是一种成熟的表达式语言,到目前为止已有两个最终版本和第三个版本:
> 1999年起XPath 1.0 充其量可以说Scala只有一小部分受XPath启发的操作.所以你不能指望采用XPath表达式并直接将它们粘贴到Scala而不需要做更多的工作. 第三方库可以为您提供更好的实际XPath表达式支持,包括: > Scales Xml > Scala库 > Saxon > Java库>开源>对XPath 2(和XSLT 2)的完整且一致的支持>有一个XPath API,可以在DOM和其他数据模型上运行,但目前没有特定的Scala支持 (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
- quick-cocos2d-x 集成 google protobuf 方法
- 隐藏Flash player的右键菜单
- c – bool乘以exclusive-or,not或(与Eigen Matrix Library)
- opencv 创建和读取xml文件以及matlab生成xml
- c# – 以XML作为数据源的实体框架代码
- Oracle RMAN备份恢复3-高级篇_超越OCP精通Oracle视频课程培
- 什么是ruby中的`hash`?
- Xcode / Objective-c – 如何以编程方式查找给定方法的调用
- ruby-on-rails – Ruby on Rails:搜索结果的自定义路由
- iPhone – UIScrollView内部UIView不滚动