如何覆盖xslt中的xml值?

时间:2014-10-09 14:27:41

标签: xml xslt

我想用几个条件将xml转换为另一个xml。其中一个条件是每当我的xml元素有DC19DAKHNDC19D0000时,在转换的xml中我想用值MN019015J覆盖它们。

如何在XSLT中执行此操作?

我的XML代码

<MyID>DC19DAKHN</MyID>

我的xslt输出是

<myID>DC19D0000</myID>

我想让它看起来像这样

<myID>MN019015J</myID>

我是否使用If Choose?

1 个答案:

答案 0 :(得分:1)

试试这个:

<?xml version="1.0" encoding="utf-8"?>
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">

<xsl:template match="node()|@*">
    <xsl:copy>
        <xsl:apply-templates select="node()|@*"/>
    </xsl:copy>
</xsl:template>

<xsl:template match="MyID/text()[.='DC19DAKHN']">MN019015J</xsl:template>

<xsl:template match="myID/text()[.='DC19D0000']">MN019015J</xsl:template>

</xsl:stylesheet>