0
我想統計其中沒有文本「未指定」的所有r
元素。計算沒有特定文本的空節點和節點時出現XQuery問題(ne)
我使用下面的XQuery:
let $r_nodes := count(doc('test.xml')//r[text() ne 'unspecified'])
return
$r_nodes
的$r_nodes
變量給我4
不6
我期待,
我想統計其中沒有文本「未指定」的所有r
元素。計算沒有特定文本的空節點和節點時出現XQuery問題(ne)
我使用下面的XQuery:
let $r_nodes := count(doc('test.xml')//r[text() ne 'unspecified'])
return
$r_nodes
的$r_nodes
變量給我4
不6
我期待,
您可以使用string()
或更緊湊的.
代替text()
正確地考慮到不包含任何文本節點元素:
let $r_nodes := count(doc('test.xml')//r[. ne 'unspecified'])
return
$r_nodes
您正在嘗試比較的有效字符串值文本節點(因此text()
)。任何空元素都不會有文本節點。因此,而不是你的查詢應該是這樣的:
let $r_nodes := count(doc('test.xml')//r[text() ne 'unspecified'])
return
$r_nodes
這樣你比較r
元素的有效字符串值,而不是它的文本節點。
感謝您的編輯,所以我怎麼能得到6,而不是4 ? –
看到我的答案!這會給你'6'。 – adamretter
我認爲使用string()而不是文本()? ,我測試了它,似乎解決了我的問題。 –