Поделиться через


Функция count (XPath)

Возвращает число узлов в наборе узлов.

number count(node-set)

Примеры

ms256103.collapse_all(ru-ru,VS.120).gifXML-файл (test.xml)

<?xml version="1.0"?>
<test>
    <x a="1">
      <x a="2">
        <x>
          <y>y31</y>
          <y>y32</y>
        </x>
      </x>
    </x>
    <x a="1">
      <x a="2">
        <y>y21</y>
        <y>y22</y>
      </x>
    </x>
    <x a="1">
      <y>y11</y>
      <y>y12</y>
    </x>
    <x>
      <y>y03</y>
      <y>y04</y>
    </x>
</test>

ms256103.collapse_all(ru-ru,VS.120).gifXSLT-файл (test.xsl)

<?xml version='1.0'?>
<xsl:stylesheet version="1.0"
      xmlns:xsl="http://www.w3.org/1999/XSL/Transform">

<xsl:output method="text" />

<xsl:template match="/">
    //x,         <xsl:value-of select="count(//x)"/>
    //x[1],      <xsl:value-of select="count(//x[1])"/>
    //x/y,       <xsl:value-of select="count(//x/y)"/>
    //x/y[1],    <xsl:value-of select="count(//x/y[1])"/>
    //x[1]/y[1], <xsl:value-of select="count(//x[1]/y[1])"/>
</xsl:template>

</xsl:stylesheet>

Вывод

Таблица стилей XSLT, примененная к вышеуказанному XML-файлу, дает следующий результат:

node-set

count(node-set)

//x

7

//x[1]

4

//x/y

8

//x/y[1]

4

//x[1]/y[1]

2

См. также

Ссылки

Справочник по типам данных XML