如何在 XSLT 1.0 中使用逗号(,) 拆分随机字符串



我需要用逗号拆分字符串并输出如下所示的内容。

input 1:
<xsl:variable name="weekdays" select="sunday,tuesday,wednesday">
input 2:
<xsl:variable name="weekdays" select="sunday,thursday,friday,saturday">

输入可能包含随机工作日。我需要输出如下所示的内容。

output 1:
<weekday>
sunday
Tuesday
wednesday
</weekday>
output 2:
<weekday>
sunday
Thursday
Friday
Saturday
</weekday>

有人可以帮忙吗?

为了实现这一点,输入 XML 应该在其中一个元素中包含comma分隔的值,否则您必须相应地准备<xsl:variable>的值。问题中显示的<xsl:variable>语法不正确。

输入 XML

<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<weekdays>Sunday,Tuesday,Wednesday</weekdays>

在 XSL 中,可以使用变量来保存元素中的值,并使用translate函数将comma替换为newline字符。

转换 XSL

<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:output method="xml" version="1.0" encoding="UTF-8" indent="yes" />
<xsl:strip-space elements="*" />
<xsl:variable name="weekday-names" select="weekdays" />
<xsl:template match="/">
<output>
<xsl:value-of select="translate($weekday-names,',','&#xA;')" />
</output>
</xsl:template>
</xsl:stylesheet>

输出 XML

<?xml version="1.0" encoding="UTF-8"?>
<output>Sunday
Tuesday
Wednesday
</output>

相关内容

  • 没有找到相关文章

最新更新