English | Français | Deutsch | Magyar | >> 中文 << | Polski adultinternetusers > Tutorials > XSLT Tutorial
>> 页 50 << | 上一条 | 下一条 | 目录 | 元素索引

函数 substring-before 返回第一个参数串中子串的前驱串,substring-after 返回第一个参数串中子串的后继串。substring 返回第一个参数串中从第二个参数位置开始,长度为第三个参数的子串。如果没有第三个参数,将会返回从第二个参数开始,一直到字串结束的子串。字符串的计数是从1开始的( XSLT stylesheet 1 )。 XSLT stylesheet 2 演示了一些参数越界或不完整的情形。

XSLT stylesheet 1

XML源码
<source>

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

</source>

输出
<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察看
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 stylesheet
<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 stylesheet 2

XML源码
<source>

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

</source>

输出
<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察看
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 stylesheet
<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>


Kevin Carr

Natural Skin Care European Soaps
TickTalk 5
city of stanton
internetusers
This is the website that has all the latest for surf, skate and snow. You can also see it here:. You'll be glad you saw the surf apparel.

Take a moment to visit 1cecilia448 or see them on twitter at 1cecilia448 or view them on facebook at 1cecilia448.

You can also get Organic Skin Care products from Bliss Bath Body and you must check out their Natural Body Lotions and bath soaps

Now if you are looking for the best deals on surf clothing from Quiksilver and Roxy then you have to check these amazing deals here:

Hey, check out this Organic Skin Care European Soaps along with Natural Lavender Body Lotion and shea butter

and we can get surf t shirts surfing shirt and And you must check out this website swim suit swimming suit and swim trunks