【发布时间】:2011-12-16 21:34:44
【问题描述】:
我想导出(或保留)XML 中具有已定义属性的子标签。由于我不知道这个过程的名称,我在网上找不到任何有关它的信息。由于很难解释,我决定为我的问题举一个例子。
假设我有这个 XML 文件:
<results>
<result idSite="1">
<row>
<label>category</label>
<visits>2</visits>
<idsubdatatable>5</idsubdatatable>
<subtable>
<row>
<label>uncategorized</label>
<visits>2</visits>
<idsubdatatable>6</idsubdatatable>
<subtable>
<row>
<label>/index</label>
<visits>2</visits>
<url>http://mysite1.com/category/uncategorized/</url>
</row>
</subtable>
</row>
</subtable>
</row>
<row>
<label>about</label>
<visits>1</visits>
<idsubdatatable>7</idsubdatatable>
<subtable>
<row>
<label>/index</label>
<visits>1</visits>
<url>http://mysite1.com/about/</url>
</row>
</subtable>
</row>
</result>
<result idSite="2">
<row>
<label>/calendar</label>
<visitors>1</visitors>
<url>http://mysite2.com/calendar</url>
</row>
</result>
</results>
我必须解析结果并只保留具有<url> 属性的行。像这样:
解析后我必须将这些行合并到一个新的 XML 文件中,最终结果必须是这样的:
<result>
<row>
<label>/index</label>
<visits>2</visits>
<url>http://mysite1.com/category/uncategorized/</url>
</row>
<row>
<label>/index</label>
<visits>1</visits>
<url>http://mysite1.com/about/</url>
</row>
<row>
<label>/calendar</label>
<visitors>1</visitors>
<url>http://mysite2.com/calendar</url>
</row>
</result>
一般来说,我想用 PHP 来做这个过程,但也可能用其他语言来做。 因此,如果您有任何解决此问题的想法,请发表评论。
【问题讨论】:
-
那些不是属性,而是元素(或者通常是标签)。 XML 中的 属性 是另一回事。可能这对您的搜索有帮助。