0

我将 xslt 用于 csv 文件。有时在xml中有一个像“a,b”这样的文本。当您在 excel 中选择逗号分隔来显示 csv 文件时,excel 认为它们必须分隔为列。但我只想为专栏做。有没有办法在 xslt 部分做到这一点?

4

2 回答 2

0

为了保留空格,您需要引用包含逗号的值。这在 XSLT 中是可能的,但答案取决于您的样式表设计。如果您想要更准确的答案,请分享您的代码。通常,您可以使用以下模板将任何感兴趣的文本节点用引号括起来:

<xsl:template match="text()[contains(., ', ')]">
    <xsl:value-of select="concat('&quot;', ., '&quot;')"/>
</xsl:template>
于 2013-10-23T09:32:54.677 回答
0

您可以从 XSLT 2.0 中的开源 CSV 到 XML 包中获得线索,我已在我的网站的“免费开发人员”部分发布:http : //www.CraneSoftwrights.com/resources/#csv 它遵循 RFC4180 http ://www.ietf.org/rfc/rfc4180.txt

这个想法是先查找引号,然后在没有引号时查找逗号。这可以用正则表达式表示,就像我在我引用的代码中所做的那样。

于 2013-10-23T12:01:32.887 回答