English | Français | Deutsch | >> Magyar << | 中文 | Polski ZVON > Tutorials > XSLT Tutorial
>> Oldal 50 << | Előző | Következő | Tartalom | Elem index

A substring-before() függvény az els? argumentumként megadott sztring azon rész-sztringjével tér vissza, mely megel?zi, míg a substring-after() függvény azon rész-sztringjével tér vissza, mely k?veti a második argumentumként megadott sztring els? el?fordulását az els? argumentum sztringen belül. A substring() függvény az els? sztring azon rész-sztringjével tér vissza, mely a második argumentumként megadott pozíciónál kezd?dik, a hossza pedig a harmadikként megadott argumentum. Ha a harmadik argumentum nincs megadva, akkor a második argumentumként megadott pozíciótól kezdve a sztring végéig tart a visszakapott rész-sztring. A számolás 1-el kezd?dik. ( XSLT stíluslap 1 ). Az XSLT stíluslap 2 azokat a helyzeteket szimulálja, ahol az argumentum a tartományon kívül esik, vagy értéke nem egész szám. A visszakapott rész-sztring azokat a karaktereket tartalmazza, melyek esetén a karakter pozíciója nagyobb vagy egyenl? a második argumentummal, és amennyiben a harmadik argumentum meghatározott, akkor kisebb mint a második és harmadik argumentum ?sszege.

XSLT stíluslap 1

XML forrás
<source>

<text>Welcome to XSL world.</text>
<string>XSL</string>
<start>4</start>
<end>10</end>

</source>

Kimenet
<DIV>
  <B>Text: </B>Welcome to XSL world.</DIV>
<B>Text before XSL: </B>Welcome to <DIV>
  <B>Text after XSL: </B> world.</DIV>
<DIV>
  <B>Text from position 4: </B>come to XSL world.</DIV>
<DIV>
  <B>Text from position 4 of length  10: </B>come to XS</DIV>

HTML nézet
Text: Welcome to XSL world.
Text before XSL: Welcome to
Text after XSL: world.
Text from position 4: come to XSL world.
Text from position 4 of length 10: come to XS
XSLT stíluslap
<xsl:stylesheet version = '1.0'
     xmlns:xsl='http://www.w3.org/1999/XSL/Transform'>

<xsl:template match="/">
     <DIV>
          <B>
               <xsl:text>Text: </xsl:text>
          </B>
          <xsl:value-of select="//text"/>
     </DIV>
     <B>
          <xsl:text>Text before </xsl:text>
          <xsl:value-of select="//string"/>
          <xsl:text>: </xsl:text>
     </B>
     <xsl:value-of select="substring-before(//text,//string)"/>
     <DIV>
          <B>
               <xsl:text>Text after </xsl:text>
               <xsl:value-of select="//string"/>
               <xsl:text>: </xsl:text>
          </B>
          <xsl:value-of select="substring-after(//text,//string)"/>
     </DIV>
     <DIV>
          <B>
               <xsl:text>Text from position </xsl:text>
               <xsl:value-of select="//start"/>
               <xsl:text>: </xsl:text>
          </B>
          <xsl:value-of select="substring(//text,//start)"/>
     </DIV>
     <DIV>
          <B>
               <xsl:text>Text from position </xsl:text>
               <xsl:value-of select="//start"/>
               <xsl:text> of length </xsl:text>
               <xsl:value-of select="//end"/>
               <xsl:text>: </xsl:text>
          </B>
          <xsl:value-of select="substring(//text,//start,//end)"/>
     </DIV>
</xsl:template>


</xsl:stylesheet>


XSLT stíluslap 2

XML forrás
<source>

<text>Welcome to XSL world.</text>
<string>XSL</string>
<start>4</start>
<end>10</end>

</source>

Kimenet
<DIV>
  <B>Text from position -4: </B>Welcome to XSL world.</DIV>
<DIV>
  <B>Text from position 4.45: </B>come to XSL world.</DIV>
<DIV>
  <B>Text from position -8 of length  15: </B>Welcom</DIV>
<DIV>
  <B>Text from position 4.4 of length  1.7: </B>co</DIV>
<DIV>
  <B>Text from position 4.4 of length  1.2: </B>c</DIV>

HTML nézet
Text from position -4: Welcome to XSL world.
Text from position 4.45: come to XSL world.
Text from position -8 of length 15: Welcom
Text from position 4.4 of length 1.7: co
Text from position 4.4 of length 1.2: c
XSLT stíluslap
<xsl:stylesheet version = '1.0'
     xmlns:xsl='http://www.w3.org/1999/XSL/Transform'>

<xsl:template match="/">
     <DIV>
          <B>
               <xsl:text>Text from position </xsl:text>
               <xsl:value-of select="//start * -1"/>
               <xsl:text>: </xsl:text>
          </B>
          <xsl:value-of select="substring(//text,//start * -1)"/>
     </DIV>
     <DIV>
          <B>
               <xsl:text>Text from position </xsl:text>
               <xsl:value-of select="//start + 0.45"/>
               <xsl:text>: </xsl:text>
          </B>
          <xsl:value-of select="substring(//text,//start + 0.45)"/>
     </DIV>
     <DIV>
          <B>
               <xsl:text>Text from position </xsl:text>
               <xsl:value-of select="//start *-2"/>
               <xsl:text> of length </xsl:text>
               <xsl:value-of select="//end *1.5"/>
               <xsl:text>: </xsl:text>
          </B>
          <xsl:value-of select="substring(//text,//start * -2,//end * 1.5)"/>
     </DIV>
     <DIV>
          <B>
               <xsl:text>Text from position </xsl:text>
               <xsl:value-of select="//start + 0.4"/>
               <xsl:text> of length </xsl:text>
               <xsl:value-of select="//end div 10 + 0.7"/>
               <xsl:text>: </xsl:text>
          </B>
          <xsl:value-of select="substring(//text,//start + 0.4,//end div 10 + 0.7)"/>
     </DIV>
     <DIV>
          <B>
               <xsl:text>Text from position </xsl:text>
               <xsl:value-of select="//start + 0.4"/>
               <xsl:text> of length </xsl:text>
               <xsl:value-of select="//end div 10 + 0.2"/>
               <xsl:text>: </xsl:text>
          </B>
          <xsl:value-of select="substring(//text,//start + 0.4,//end div 10 + 0.2)"/>
     </DIV>
</xsl:template>


</xsl:stylesheet>