我有这个XML,我试图从中提取序列号。可能找到具有特定名称的元素的实例,不管其位置如何
但是,序列号不在同一级别,所以我觉得很难完成它,因为我使用的工具要求我使用一个XPATH表达式来完成它。
<rpc-reply>
<chassis-inventory>
<chassis junos:style="inventory">
<name>Chassis</name>
<serial-number>AAABBB</serial-number>
<description>SRX220H</description>
<chassis-module>
<name>Routing Engine</name>
<version>REV 23</version>
<part-number>750-031175</part-number>
<serial-number>XXXYYY</serial-number>
<description>RE-SRX220H</description>
</chassis-module>
<chassis-module>
<name>FPC 0</name>
<description>FPC</description>
<chassis-sub-module>
<name>PIC 0</name>
<description>8x GE Base PIC</description>
</chassis-sub-module>
</chassis-module>
<chassis-module>
<name>Power Supply 0</name>
</chassis-module>
</chassis>
</chassis-inventory>
<cli>
<banner></banner>
</cli>
</rpc-reply>
我希望提取的数据是:
<name>Chassis</name>
<serial-number>AAABBB</serial-number>
<name>Routing Engine</name>
<serial-number>XXXYYY</serial-number>
任何想法?
亲切的问候,
帕特里克
显示您的尝试和当前输出。另外指定你的工具使用的XPath版本 – Andersson
嗨,谢谢你的评论!我没有太多的展示,因为我找不到任何“位置独立”的方式来查找数据。我的想法是检索所有具有* name *和* serial-number *的“关卡”并显示它们。该工具是专有的第三方,所以我实际上不知道它是哪个版本。 – PatrikJ
您尚未说明根据XML选择这些元素的基础。在你这样做之前,你所得到的只是猜测,一般而言可能对你不起作用。 – kjhughes