如何创建xquery以选择节点名称,其中节点名称以某些文本开头。例如文档Xquery节点值,其中节点以相同文本开始
<doc>
<cpv1>Value1</cpv1>
<cpv2>Value2</cpv2>
<cpv3>Value3</cpv3>
<zzz>Hello world!</zzz>
</doc>
应该得到值1,值2,值3
如何创建xquery以选择节点名称,其中节点名称以某些文本开头。例如文档Xquery节点值,其中节点以相同文本开始
<doc>
<cpv1>Value1</cpv1>
<cpv2>Value2</cpv2>
<cpv3>Value3</cpv3>
<zzz>Hello world!</zzz>
</doc>
应该得到值1,值2,值3
这里是一个给定的XPath表达式你值1,值2,值3: // * [子(文字(),1,5 )= “值”] /文本()
// DOC/* [FN:开始 - 与(FN:本地名称(), 'CPV')] /文本()
所以DocumentRequest节点包含别名节点。我选择所有以前缀val开头的别名节点。
<ArrayOfDocumentRequest>
<DocumentRequest>
<Alias>
prefix1_OtherText
</Alias>
</DocumentRequest>
<DocumentRequest>
<Alias>
prefix2_OtherText
</Alias>
</DocumentRequest>
</ArrayOfDocumentRequest>
<F_PREFIXLIST>
<prefixes>
<p>prefix1</p>
<p>prefix2</p>
<p>prefix3</p>
</prefixes>
</F_PREFIXLIST>
for $i in /ArrayOfDocumentRequest
for $p in $F_PREFIXLIST/prefixes/p
return $i/DocumentRequest/Alias[fn:starts-with(text(), $p/text())]