Re: [xsl] XSLT Regex for Matching Curly Braces

Subject: Re: [xsl] XSLT Regex for Matching Curly Braces
From: "Don Smith dsmith_lockesmith@xxxxxxxxx" <xsl-list-service@xxxxxxxxxxxxxxxxxxxxxx>
Date: Mon, 10 Jun 2019 18:20:39 -0000
 Thank you all,
I used Gerrit's suggestionB <xsl:analyze-string select="."
regex="\{{([^}}]+)\}}"> and it appears to work exactly as desired. Further
testing TBA.
Thanks again,
Don
    On bMondayb, bJuneb b10b, b2019b
b12b:b32b:b41b bPMb bCDT, gerrit.imsieke@xxxxxxxxx
<xsl-list-service@xxxxxxxxxxxxxxxxxxxxxx> wrote:

 Agree, if expand-text is available (if one uses XSLT 3.0, for which there is
almost no reason not to).

Sent from MailDroid

-----Original Message-----
From: "Michael Kay mike@xxxxxxxxxxxx"
<xsl-list-service@xxxxxxxxxxxxxxxxxxxxxx>
To: xsl-list <xsl-list@xxxxxxxxxxxxxxxxxxxxxx>
Sent: Mon, 10 Jun 2019 18:21
Subject: Re: [xsl] XSLT Regex for Matching Curly Braces




On 10 Jun 2019, at 17:56, Imsieke, Gerrit, le-tex gerrit.imsieke@xxxxxxxxx
<xsl-list-service@xxxxxxxxxxxxxxxxxxxxxx> wrote:
If you want to use xsl:analyze-string with XSLT 2.0 (or 3.0), you can put the
regex in a variable, like so:


 B <xsl:variable name="regex" as="xs:string" select="'\{([^}]+)\}'"/>


I think it's even clearer to use

<xsl:variable name="regex" as="xs:string"
expand-text="no">{([^}]+)\}</xsl:variable>




This way you avoid complications with single and double quotes as well as
curly braces: the only characters that now have an XML or XSLT-defined special
meaning are "&" and "<", and these fortunately don't have special meanings in
regular expressions.
Michael KaySaxonica
XSL-List info and archiveEasyUnsubscribe(by email)XSL-List info and
archiveEasyUnsubscribe(by email)

Current Thread