我有一个XML文档,我需要删除特定的数据
xml文档具有如下结构: –
<a> <b select='yes please'> <c d='text1' e='text11'/> <c d='text2' e='text12'/> <c d='text3' e='text13'/> <c d='text4' e='text14'/> <c d='text5' e='text15'/> </b> </a> <a> <b select='no thanks'> <c d='text1' e='text21'/> <c d='text3' e='text23'/> <c d='text5' e='text25'/> </b> </a> <a> <b select='yes please'> <c d='text1' e='text31'/> <c d='text2' e='text32'/> <c d='text3' e='text33'/> <c d='text4' e='text34'/> <c d='text5' e='text35'/> </b> </a> <a> <b select='no thanks'> <c d='text4' e='text41'/> <c d='text3' e='text43'/> <c d='text5' e='text45'/> </b> </a>
我需要选择只有那些/ a / b元素组,d属性=’text1’和
d attribute =’text4’,一旦我已经识别这些子文档,我想获得e属性的值,d属性值’text5′
希望明白
干杯
DD
您可以使用此XPath:
//a[b/c/@d = 'text1' and b/c/@d = 'text4']/b/c[@d = 'text5']/@e
它将选择第一和第三个a / b的e =’text15’和e =’text35′
XSLT:
<xsl:template match="//a[b/c/@d = 'text1' and b/c/@d = 'text4']/b/c[@d = 'text5']"> <xsl:value-of select="@e"/> </xsl:template>