[XSL-LIST Mailing List Archive Home] [By Thread] [By Date] [Recent Entries] [Reply To This Message]

Re: Find the string and apply the tag

Subject: Re: Find the string and apply the tag
From: "Imsieke, Gerrit, le-tex" <gerrit.imsieke@xxxxxxxxx>
Date: Wed, 23 Dec 2009 13:54:20 +0100
Re:  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

Current Thread

PURCHASE STYLUS STUDIO ONLINE TODAY!

Purchasing Stylus Studio from our online shop is Easy, Secure and Value Priced!

Buy Stylus Studio Now

Download The World's Best XML IDE!

Accelerate XML development with our award-winning XML IDE - Download a free trial today!

Don't miss another message! Subscribe to this list today.
Email
First Name
Last Name
Company
Subscribe in XML format
RSS 2.0
Atom 0.3
Site Map | Privacy Policy | Terms of Use | Trademarks
Free Stylus Studio XML Training:
W3C Member
Stylus Studio® and DataDirect XQuery ™are products from DataDirect Technologies, is a registered trademark of Progress Software Corporation, in the U.S. and other countries. © 2004-2013 All Rights Reserved.