我已經閱讀了很多XQuery位置,但所有示例都是關於>
,<
或=
。但你也可以使用x - y
,我很困惑,什麼是包容性的,什麼不包含。瞭解XQuery位置():包含或排除結束位置
[position() = $startPosition to $endPosition]
比方說,$指定startPosition是1
(因爲我已閱讀,位置不爲0,但是從1開始),什麼將返回先打? $ endPosition設置爲1
以及2
?
換句話說,如果預期回報爲n
,那麼這兩個變量的公式是什麼?爲了使事情更清楚,我們可以添加一個增量循環($iteration
)。基本上我們正在生成一個搜索,可以找到所有後續的位置匹配。 (作爲一個例子)
$endPosition = 1 + ($iteration * n);
$startPosition = $endPosition - n;
這就是我想出的。這將導致以下結果,爲$iteration
1和增量開始,和3
1:
$endPosition = 1 + (1 * 3); // 4
$startPosition = 4 - 3; // 1
2:
$endPosition = 1 + (2 * 3); // 7
$startPosition = 7 - 3; // 4
3:
$endPosition = 1 + (3 * 3); // 10
$startPosition = 10 - 3; // 7
n
但是,這是正確的?我不確定。是否包含$endPosition
?如果沒有,我的代碼是正確的,如果沒有的話 - 它不是,然後我對正確的公式感興趣。
我不明白你在之後是什麼所有。你在談論子序列,然後你做一些似乎並不相關的算術。你能否添加一個解釋你意圖的例子? –