首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使用REXML解析XML

使用REXML解析XML
EN

Stack Overflow用户
提问于 2010-10-27 01:40:01
回答 1查看 433关注 0票数 0

我有这个XML文档,我想使用REXML查找特定的GitHubCommiter。我为什么要这样做呢?

代码语言:javascript
复制
<users>
 <GitHubCommiter id="Nerian">
  <username>name</username>
  <password>12345</password>
 </GitHubCommiter>

 <GitHubCommiter id="xmawet">
  <username>name</username>
  <password>12345</password>
 </GitHubCommiter>

 <GitHubCommiter id="JulienChristophe">
  <username>name</username>
  <password>12345</password>
  </GitHubCommiter>
</users>

我试过了:

代码语言:javascript
复制
log = REXML::Document.new(file)                                                      
root = log.root                                                                         username = root.elements["GitHubCommiter['#{github_user_name}']"].elements['username'].text      
password =     root.elements["GitHubCommiter['#{github_user_name}']"].elements['password'].text
root.elements["GitHubCommiter['id'=>'#{github_user_name}']"].text

但我找不到一种方法。有什么想法吗?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2010-10-27 01:46:53

docs say for elements (我的重点):

[]( index, name=nil)提取一个子元素。只过滤元素的子项,而不管XPath是否匹配。

搜索参数index:。这可以是一个整数,它将用于查找索引的第一个子元素,也可以是一个XPath,它将用于搜索该元素。

所以它需要是XPath:

代码语言:javascript
复制
root.elements["./GitHubCommiter[@id = '{github_user_name}']"]

等。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/4026332

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档