Re: [xsl] A beautiful way to populate a variable with N blanks?

Subject: Re: [xsl] A beautiful way to populate a variable with N blanks?
From: "Chris Papademetrious christopher.papademetrious@xxxxxxxxxxxx" <xsl-list-service@xxxxxxxxxxxxxxxxxxxxxx>
Date: Fri, 24 Feb 2023 15:04:53 -0000
Hi Makita-san,

That is the form I was about to post too. Martin's suggestion is a novel use
of the "!" operator, but my OCD seems to not like generating data that is
never meaningfully used. Although longer, I feel the "for" loop's intent is a
bit easier for future novices to follow.

That being said, I still enjoy seeing clever uses of the "!" operator!

 - Chris

-----Original Message-----
From: Toshihiko Makita tmakita@xxxxxxxxxxxxx
<xsl-list-service@xxxxxxxxxxxxxxxxxxxxxx>
Sent: Friday, February 24, 2023 9:59 AM
To: xsl-list@xxxxxxxxxxxxxxxxxxxxxx
Subject: Re: [xsl] A beautiful way to populate a variable with N blanks?

How about the following?

<xsl:variable name="blanks" as="xs:string" select="string-join(for $i in
1 to $N return (' '), '')"/>

On 2/24/2023 11:44 PM, Roger L Costello costello@xxxxxxxxx wrote:
> Hi Folks,
>
> $N contains an integer.
>
> $blanks is a string variable. The string is to consist of $N blanks (space
characters).
>
> Below is one way to populate $blanks. It's an awful solution. Is there a
beautiful (simple) solution?
>
> <xsl:variable name="tmp" as="xs:string+">
>      <xsl:sequence select="''" />
>      <xsl:sequence select="for $i in 1 to $N return (' ')"/>
> </xsl:variable>
>
> <xsl:variable name="blanks" as="xs:string">
>      <xsl:value-of select="$tmp" separator=""/> </xsl:variable>
>
>
Toshihiko Makita
Antenna House, Ina Branch.

Current Thread