我正面临一个问题,我必须在循环中动态替换字符串。我必须将XML转换为HTML。
XML结构是:
<FUNCTION ID="XYZ" UNIT_TYPE="percent"/>
<STRING_LITERAL><![CDATA[1143]]></STRING_LITERAL>
<STRING_LITERAL><![CDATA[1]]></STRING_LITERAL>
<STRING_LITERAL>NULL</STRING_LITERAL>
<STRING_LITERAL>NULL</STRING_LITERAL>
<STRING_LITERAL><![CDATA[Prepaid]]></STRING_LITERAL>
<STRING_LITERAL>NULL</STRING_LITERAL>
<BOOLEAN>true</BOOLEAN>
<BOOLEAN>true</BOOLEAN>
<STRING_LITERAL>NULL</STRING_LITERAL>
<STRING_LITERAL>NULL</STRING_LITERAL>
<STRING_LITERAL>NULL</STRING_LITERAL>
<STRING_LITERAL>NULL</STRING_LITERAL>
</FUNCTION>
预期的HTML输出是:
Scheme : 1143
Payout : 1
Deposit: Prepaid
Target : true
Is Reprotable : true
我在xslt 1.0 string replace function检查了解决方案,但在这种情况下我无法应用它。请帮忙。
答案 0 :(得分:0)
我不清楚你要做什么。但是,从您发布的输入生成预期输出的非常简单的XSLT 1.0可能如下所示:
<?xml version="1.0" encoding="UTF-8"?>
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:output encoding="UTF-8" method="html" indent="yes"/>
<xsl:template match="/">
<html>
<head>
<title>test</title>
</head>
<body>
<xsl:apply-templates/>
</body>
</html>
</xsl:template>
<xsl:template match="FUNCTION">
<p>
<xsl:text>Scheme : </xsl:text>
<xsl:value-of select="STRING_LITERAL[1]"/>
<br/>
<xsl:text>Payout : </xsl:text>
<xsl:value-of select="STRING_LITERAL[2]"/>
<br/>
<xsl:text>Deposit : </xsl:text>
<xsl:value-of select="STRING_LITERAL[5]"/>
</p>
<p>
<xsl:text>Target : </xsl:text>
<xsl:value-of select="BOOLEAN[1]"/>
<br/>
<xsl:text>Is Reprotable : </xsl:text>
<xsl:value-of select="BOOLEAN[2]"/>
</p>
</xsl:template>
</xsl:stylesheet>