Главная -> XML&... -> XSLT в примерах 
>> Страница 52 << | Назад | Вперед | Содержание | Указатель

Функция translate() возвращает строку из первого аргумента, в которой символы из второго строкового аргумента в соответствии с их позицией заменены на символы из третьего строкового аргумента. Если какой-либо символ встречается во втором аргументе более, чем один раз, то учитывается только первое его появление. Если строка из третьего аргумента длиннее, чем строка из второго аргумента, то остаток строки игнорируется.

Преобразование 1

Исходный XML
<source>

<text>goose</text>

</source>

Результат
<P>goose</P>
<P>GOOSE</P>
<P>good</P>
<P>bad</P>
<P>books</P>

Представление HTML

goose

GOOSE

good

bad

books

Преобразование XSLT
<xsl:stylesheet version = '1.0'
     xmlns:xsl='http://www.w3.org/1999/XSL/Transform'>

<xsl:template match="/">
     <P>
          <xsl:value-of select="//text"/>
     </P>
     <P>
          <xsl:value-of select="translate(//text,'egos','EGOS')"/>
     </P>
     <P>
          <xsl:value-of select="translate(//text,'se','d')"/>
     </P>
     <P>
          <xsl:value-of select="translate(//text,'gseo','bad')"/>
     </P>
     <P>
          <xsl:value-of select="translate(//text,'gseg','bksC')"/>
     </P>
</xsl:template>


</xsl:stylesheet>

Raleigh.ru Copyright © 2002