Подскажите пжалуйста люди добрые
Дело такое, посредством xsl надо обрабатывать html документ и из разых таблиц получать данные в виде хмл файла.
И у меня возникла трудность в нескольких пунктах.
1
при получении данных, если таблица в таблице
- пример
при таком раскладе работает и выдает данные ячейки td2
<xsl:for-each select='HTML/BODY/TABLE[3]/TR[1]/TD[3]'>
<player>
<xsl:attribute name="name">
<xsl:value-of select="//TABLE/TR[2]/TD[2]"/> </xsl:attribute>
Но посути это неверно так как <xsl:value-of select="//TABLE/TR[2]/TD[2]"/> не является первой таблицой внутри TABLE[3].
Правильно должно быть поидее
<xsl:value-of select="//TABLE[4]/TR[2]/TD[2]"/> так как таюлица является 4 по счету, но стоит добавить порядковый номер, как сразу пропадает любая выдача
В чем может быть загвозда?
2 пункт.
На этом же примере:
<xsl:value-of select="//TABLE[4]/TR[2]/TD[2]"/>
в случае когда у меня в
TD[2] идет перечислениеанных - например: (lb 5, w 21, nb 2)
и мне их надо получит не так, как при использованиикода
<xsl:value-of select="//TABLE/TR[2]/TD[2]"/>
И я получу все что было в этой ячейке, типа: <player name="(lb 5, w 21, nb 2)" />
А мне надо разбить по частям и получить выдачу типа:
<player name="(lb 5", name2="w 21", name3="nb 2)" />
Соответсвенно после TD[2] мне необходимо дописать еще какоето правило для разбива текста.. толи указать что разделителем является запятая, ил пробел, и после каждой части текста задать порядковый номер.
Возможно как то типа TD[2]/text()[2]
Подскажите плиз, как правильно это сделать?