【发布时间】:2014-08-28 13:29:29
【问题描述】:
我想转换一个 XML 文档并在某些属性上做一些正则表达式/替换。
这是 XML:
<node1>
<node2>
<item attrbitueToModify="Blabla"></item>
</node2>
<node3>
<node4>
<item attrbitueToModify="Blabla"></item>
</node4>
</node3>
<node1>
这里是变换
<xsl:template match="*" >
<node1>
<xsl:for-each select="attribute::*" >
<xsl:choose>
<xsl:when test="fn:name() = 'attrbitueToModify'">
<xsl:attribute name="attrbitueToModify" ><xsl:value-of select="replace(., 'blabla', 'replaced')" /></xsl:attribute>
</xsl:when>
<xsl:otherwise>
<xsl:copy-of select="." />
</xsl:otherwise>
</xsl:choose>
</xsl:for-each>
<xsl:apply-templates select="*" />
</node1>
</xsl:template>
我不知道如何将 <node1> 从转换变为动态。
【问题讨论】:
标签: xml regex xslt transformation