我怎样才能获得价值'四'在XSLT中?
<root>
<entry>(one,two,three,four,five,six)</entry>
</root>
提前致谢。
答案 0 :(得分:0)
您没有指定XSLT版本,所以我假设版本 2.0 。
我还假设单词four
只是一个“标记”,说明来自哪个地方
获取结果字符串(在第3个和第4个逗号之间)。
要获得所需的片段,您可以:
tokenize
功能“剪切”entry
的全部内容
用逗号作为切割图案。该表达式可用于例如在匹配entry
的模板中。
因此示例脚本如下所示:
<?xml version="1.0" encoding="UTF-8" ?>
<xsl:transform version="2.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:output method="xml" encoding="UTF-8" indent="yes" />
<xsl:template match="entry">
<xsl:copy>
<xsl:value-of select="tokenize(., ',')[4]"/>
</xsl:copy>
</xsl:template>
<xsl:template match="@*|node()">
<xsl:copy><xsl:apply-templates select="@*|node()"/></xsl:copy>
</xsl:template>
</xsl:transform>
对于您的输入XML,它提供:
<?xml version="1.0" encoding="UTF-8"?>
<root>
<entry>four</entry>
</root>