Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > XML, XSL > Сравнение элементов строк в XSLT


Автор: wind1 23.6.2009, 15:08
Один из участков XML-файла имеет такой вид:
Код

<slovo>Слово1</slovo>
<slovo>Слово2</slovo>
<slovo>Слово3</slovo>
<slovo>Слово4</slovo>
<slovo>Слово5</slovo>
<slovo>Слово6</slovo>
<slovo>Слово7</slovo>

Подскажите, пожалуйста, как в правилах шаблона XSLT для таких элементов определить:
1. Является ли это слово первым по счету.
2. Совпадает ли первый символ этого слова с первым символом предыдущего слова.
Сорри, я только начал xsl изучать, поэтому хорошо бы пример)   smile 

Автор: jsa 24.6.2009, 05:57
1
Код

<xsl:for-each select="slovo">
<xsl:if test="position() = 1">
....
</xsl:if>
</xsl:for-each>

2
Код

<xsl:for-each select="slovo">
<xsl:if test="substring(text(), 1, 1) = substring(preceding-sibling::*[1]/text(),1,1)">
....
</xsl:if>
</xsl:for-each>

примерно так

Автор: wind1 24.6.2009, 09:54
Спасибо.

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)