我有XML,请参见下面的示例
<params>
<param id='1'>BEN</param>
<param id='2'>DAN</param>
<param id='3'>RYE</param>
<param id='3'>RYE</param>
<param id='3'>RYE</param>
</params>
如何获取属性id = 3的所有参数?
以下是我到目前为止所做的事情:xmlinfile是XML文件
inxml = xmlTreeParse(xmlinfile, handlers=list("comment"=function(x,...){NULL}), asTree = TRUE)
xmlList = xmlToList(inxml);
params = xmlList$'params'
谢谢你
您需要使用xpathApply
带参数的函数xmlValue
(获取值,否则xmlAttrs
获取属性)。路径应该用以下语法给出:"//tag[@attribute='value']"
。
a <- xmlParse('<params>
<param id='1'>BEN</param>
<param id='2'>DAN</param>
<param id='3'>RYE</param>
<param id='3'>RYE</param>
<param id='3'>RYE</param>
</params>')
xpathApply(a,"//param[@id='3']",xmlValue)
[[1]]
[1] "RYE"
[[2]]
[1] "RYE"
[[3]]
[1] "RYE"
同样xpathSApply
,在可能的情况下也会为您提供价值的载体:
xpathSApply(a,"//param[@id='3']",xmlValue)
[1] "RYE" "RYE" "RYE"
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句