How to use the count() function is XSL - trying to

2019-04-18 22:19发布

I'm trying to count the amount of A's there are in a school report.

Here is the report:

<class>
  <student>
    <first-name>Jane</first-name>
    <last-name>Doe</last-name>
    <grade>A</grade>
  </student>
  <student>
    <first-name>John</first-name>
    <last-name>Smith</last-name>
    <grade>B</grade>
  </student>
  <student>
    <first-name>Harry</first-name>
    <last-name>Grandson</last-name>
    <grade>A</grade>
  </student>
  <student>
    <first-name>Lacy</first-name>
    <last-name>Jones</last-name>
    <grade>C</grade>
  </student>
</class>

How do I get the number of A's in the report?

I came up with:

<xsl:value-of select="count(/class/student/grade)"/>

But that counts everything - So I tried to get only the A's with this:

<xsl:value-of select="count(/class/student/grade/A)"/>

But this doesn't work either.

I also tried this:

<xsl:value-of select="count(/class/student[grade=A])"/>

But that doesn't work either - what do you guys think?

标签: xml xslt
1条回答
老娘就宠你
2楼-- · 2019-04-18 23:03
<xsl:value-of select="count(/class/student[grade='A'])"/>
查看更多
登录 后发表回答