RE: [xsl] Find the string and apply the tag

Subject: RE: [xsl] Find the string and apply the tag
From: "Selvaganesh" <selvaganesh_t@xxxxxxxxxxxxxx>
Date: Wed, 23 Dec 2009 19:16:55 +0530
Hi Gerrit,

I have one more question,

Can I use below XSL coding for IE viewing purpose? It will be working or the
coding working only Saxon processer.

Thanks,
Selva

-----Original Message-----
From: Imsieke, Gerrit, le-tex [mailto:gerrit.imsieke@xxxxxxxxx]
Sent: Wednesday, December 23, 2009 6:24 PM
To: xsl-list@xxxxxxxxxxxxxxxxxxxxxx
Subject: Re: [xsl] Find the string and apply the tag

Dear Selva,

xsl:analyze-string should do the trick.

flags="s" is for multiline input (treat newline as ordinary character).

The rules where to add boldface, i.e., the regex, might get somewhat complex
when you try to capture all real-life cases. The 'x' flag will help you
writing a more readable regex then. See
http://www.w3.org/TR/xpath-functions/#flags

Things will get complicated though if some markup inside <derivation> has to
survive. There's no analyze-string that will reproduce elements in the
matched substring.

  <xsl:template match="/">
    <root>
      <xsl:apply-templates select="derivations/derivation" mode="boldify"/>
    </root>
  </xsl:template>

  <xsl:template match="derivation" mode="boldify">
    <xsl:copy>
      <xsl:analyze-string select="."
        regex="(
                 replaces?
                 | was[ ]created[ ]in.+
               )"
        flags="sx">
        <xsl:matching-substring>
          <b>
            <xsl:value-of select="."/>
          </b>
        </xsl:matching-substring>
        <xsl:non-matching-substring>
          <xsl:value-of select="."/>
        </xsl:non-matching-substring>
      </xsl:analyze-string>
    </xsl:copy>
  </xsl:template>

Gerrit


Selvaganesh schrieb:
> Hi Team,
>
> Am new in the XSLT regex part, kindly help me, how can I find the string
and
> apply the tag.
>
> Input file:
> <derivations id="Section 111">
> <derivation>Subsection (1) was created in drafting (i.e. added by the
> drafter of the consolidation and not found in the earlier
> legislation)</derivation>.
> <derivation>Subsection (2) replaces <sccc:legis-cite sccc:title="Income
and
> Corporation Taxes Act" sccc:year="1988" sccc:chapter="1"
sccc:section="root"
> sccc:type="statute">Income and Corporation Taxes Act
1988</sccc:legis-cite>
> <sccc:legis-cite sccc:title="Income and Corporation Taxes Act"
> sccc:year="1988" sccc:chapter="1" sccc:section=""
sccc:type="statute">Sch.5
> para.8(6).</sccc:legis-cite></derivation>
> <derivation>Subsection (3) replaces <sccc:legis-cite sccc:title="Income
and
> Corporation Taxes Act" sccc:year="1988" sccc:chapter="1"
sccc:section="root"
> sccc:type="statute">Income and Corporation Taxes Act
1988</sccc:legis-cite>
> <sccc:legis-cite sccc:title="Income and Corporation Taxes Act"
> sccc:year="1988" sccc:chapter="1" sccc:section=""
sccc:type="statute">Sch.5
> para.3(12).</sccc:legis-cite></derivation>
> <derivation>Subsection (3) replace <sccc:legis-cite sccc:title="Income and
> Corporation Taxes Act" sccc:year="1988" sccc:chapter="1"
sccc:section="root"
> sccc:type="statute">Income and Corporation Taxes Act
1988</sccc:legis-cite>
> <sccc:legis-cite sccc:title="Income and Corporation Taxes Act"
> sccc:year="1988" sccc:chapter="1" sccc:section=""
sccc:type="statute">Sch.5
> para.3(12).</sccc:legis-cite></derivation>
> </derivations>
>
> Expected Output:
>
> <root>
> <p>Subsection (1) <b>was created in drafting (i.e. added by the drafter of
> the consolidation and not found in the earlier legislation)</b>.</p>
> <p>Subsection (2) <b>replaces</b> Income and Corporation Taxes Act
1988Sch.5
> para.8(6).</p>
> <p>Subsection (3) <b>replace</b> Income and Corporation Taxes Act
1988Sch.5
> para.3(12).</p>
> </root>
>
> Thanks to everyone,
> Selva
>
>
>
> Confidentiality Notice:  This transmittal is a confidential communication.
If you are not the intended recipient, you are hereby notified that you have
received this transmittal in error and that any review, dissemination,
distribution or copying of this transmittal is strictly prohibited.  If you
have received this communication in error, please notify this office
immediately by reply and immediately delete this message and all of its
attachments, if any.
>

--
Gerrit Imsieke
Geschdftsf|hrer / Managing Director
le-tex publishing services GmbH
Weissenfelser Str. 84, 04229 Leipzig, Germany
Phone +49 341 355356 110, Fax +49 341 355356 510
gerrit.imsieke@xxxxxxxxx, http://www.le-tex.de

Registergericht / Commercial Register: Amtsgericht Leipzig
Registernummer / Registration Number: HRB 24930

Geschdftsf|hrer: Gerrit Imsieke, Svea Jelonek,
Thomas Schmidt, Dr. Reinhard Vvckler



Confidentiality Notice:  This transmittal is a confidential communication.  If
you are not the intended recipient, you are hereby notified that you have
received this transmittal in error and that any review, dissemination,
distribution or copying of this transmittal is strictly prohibited.  If you
have received this communication in error, please notify this office
immediately by reply and immediately delete this message and all of its
attachments, if any.

Current Thread