我需要在我的 Android 活动中解析以下 XML 结构。我有它的字符串格式:
<Cube>
<Cube time="2012-09-20">
<Cube currency='USD' rate='1.2954'/>
<Cube currency='JPY' rate='101.21'/>
<!-- More cube tags here -->
</Cube>
</Cube>
为此,我想获得一系列货币名称(美元、日元等)及其各自的汇率。可选地,在上述指定格式的 XML 文档中仅出现一次的日期。还要注意空的 Cube 标签。可能还有其他类似的奇怪事件。我只需要获取同时设置了货币和汇率的 Cube 标签。
最好使用一些 XML 解析库而不是正则表达式,但如果它诉诸于此,我也准备好使用它。
编辑:这是我到目前为止想出的。问题是在数组中插入匹配的元素,我不知道该怎么做。
Pattern p = Pattern.compile("<Cube\\scurrency='(.*)'\\srate='(.*)'/>");
Matcher matcher = p.matcher(currency_source);
while (matcher.find()) {
Log.d("mine", matcher.group(1));
}