11

对于使用 xslt 1.0 的人,我已经看到了使用 translate 函数将字符串转换为小写(或大写)的模式。

有没有一种优雅的方法可以让字符串的第一个字母小写?

TestCase => testCase
4

4 回答 4

14

例如,如果您的字符串位于名为 的属性中name

<xsl:value-of select="concat(translate(substring(@name, 1, 1), 'ABCDEFGHIJKLMNOPQRSTUVWXYZ', 'abcdefghijklmnopqrstuvwxyz'), substring(@name, 2))"/>
于 2009-03-17T17:48:06.953 回答
3

您应该能够将substringconcat与 translate 结合使用,如下所示:

concat(translate(substring(s,1,1), $smallcase, $uppercase),substring(s,2))
于 2009-03-17T17:44:33.093 回答
0

使用 XPathtranslate函数,将字符串分成第一个字符和其余字符。这将需要有点冗长的 XSLT 使用多个变量来保存中间结果。

于 2009-03-17T17:40:58.267 回答
0

XSLT 有一个 substring 函数,因此您可以使用该模式和 substring 函数来获得您想要的。

于 2009-03-17T17:41:12.510 回答