XPath で数値のモジュラスを計算したいのですが、うまくいきません:
<xsl:if test="(count()%8)">
どうすればいいですか?ここでXPath関数のリファレンスを見ましたが、そのようなものは見当たりませんでした。
「モード」を試してください
http://www.w3.org/TR/xpath#numbersを参照
そのリンクからの詳細:
mod 演算子は、切り捨て除算の剰余を返します。例えば、
5 mod 2 は 1 を返します
5 mod -2 は 1 を返します
-5 mod 2 は -1 を返します
-5 mod -2 は -1 を返します
注: これは、Java および ECMAScript の % 演算子と同じです。
試す
<xsl:if test="(count() mod 8)">
XSLの場合と同様に、モジュラスを取得するには「mod」を使用する必要があります
足し算・引き算をするときも注意が必要です。加算を行うときは、すべて $var1+$var2 でうまくいくはずです。ただし、減算では、変数名にダッシュ (-) が有効であるため、$var1-$var2 は機能しません。しかし、$var1 - $var2 および number($var1) - number($var2) は常に機能するはずであり、Novell の Identity Manager 製品での XPATH の使用に関連して私が書いた記事を見ることができます。