Re: Upper-casing the first character of a string -- Am I missing some thing?

Subject: Re: Upper-casing the first character of a string -- Am I missing some thing?
From: Oliver Becker <obecker@xxxxxxxxxxxxxxxxxxxxxxx>
Date: Tue, 1 Aug 2000 11:42:43 +0200 (MET DST)
> I need to upper-case the first character of a string contained in my 
> input XML prior to output.  I was wondering if there was a better way, 
> this seems a bit clunky:
> 
> <xsl:value-of select="translate(substring(@name, 1, 1), 
> 'abcdefghijklmnopqrstuvwxyz', 'ABCDEFGHIJKLMNOPQRSTUVWXYZ')" />
> <xsl:value-of select="substring(@name, 2, string-length(@name) - 1)" />

I would say: if you don't want to use proprietary extensions - that's it!
Two points:
 - you may use one xsl:value statement and connect the strings by concat
 - you can omit the 3rd parameter of substring 

Thus you get
<xsl:value-of select="concat(translate(substring(@name, 1, 1),    
                                       'abcdefghijklmnopqrstuvwxyz', 
                                       'ABCDEFGHIJKLMNOPQRSTUVWXYZ'),
                             substring(@name, 2))" />

Is that less clunky?
... whatever that means - couldn't find it in my Muret-Sanders dictionary ;-)

Cheers,
Oliver


/-------------------------------------------------------------------\
|  ob|do        Dipl.Inf. Oliver Becker                             |
|  --+--        E-Mail: obecker@xxxxxxxxxxxxxxxxxxxxxxx             |
|  op|qo        WWW:    http://www.informatik.hu-berlin.de/~obecker |
\-------------------------------------------------------------------/


 XSL-List info and archive:  http://www.mulberrytech.com/xsl/xsl-list


Current Thread