借助XSLT从XML文件中提取信息

时间:2017-08-17 19:05:46

标签: xml xslt xpath

我需要以下XML文件中的数据。 我需要标签为TYPE且值为Version的信息 例如<TYPE index="1">Version 121212</TYPE> 我可以在我的项目中使用XSLT和XPATH。 请通过XSLT或XPATH帮助完成它。

<CATALOG>
  <PLANT>
    <COMMON>Bloodroot</COMMON>
    <BOTANICAL>Sanguinaria canadensis</BOTANICAL>
    <TYPE index="1">Version 121212</TYPE>
    <TYPE index="2">Version2 121213</TYPE>
    <TYPE index="3">Version3 121233</TYPE>
    <TYPE index="4">Version4 121255</TYPE>
    <TYPE index="5">Version 121212</TYPE>
    <TYPE index="6">Version 121212</TYPE>
    <TYPE index="7">Version 121212</TYPE>
    <TYPE index="8">Version 121212</TYPE>
    <TYPE index="9">Version 121212</TYPE>
    <ZONE>4</ZONE>
  </PLANT>
</CATALOG>

2 个答案:

答案 0 :(得分:0)

  

我需要标签为TYPE且值为[contains] Version

的信息

试试这个XPath:

//TYPE[contains(text(),'Version')]

选择文本内容包含的所有TYPE元素&#34;版本&#34;。

答案 1 :(得分:0)

作为XSLT

&#13;
&#13;
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="2.0">
  <xsl:template match="TYPE">
    <h1><xsl:value-of select="."/></h1>
  </xsl:template>
  <xsl:template match="/">
    <xsl:apply-templates select="//TYPE[contains(text(), 'Version')]" />
  </xsl:template>
</xsl:stylesheet>
&#13;
&#13;
&#13;