首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >用xquery读取xml文档时的错误逻辑?

用xquery读取xml文档时的错误逻辑?
EN

Stack Overflow用户
提问于 2014-04-20 11:43:10
回答 1查看 54关注 0票数 0

我有很多包含<h1>text</h1>的XML文档。例如:

代码语言:javascript
复制
<p>
 <h1>
   text-1
 </h1>
 a lot text
 <h1>
   text-2
 </h1>
</p>

我插入以下代码:

代码语言:javascript
复制
for $p in (1 to 351)
return <a href="{$p}">{data(doc(concat("/db/INDEX/",$p,".html"))//h1)}</a>

其结果是:

代码语言:javascript
复制
<a href="2"<----this is page number >
 text-1
 text-2
</a>
<a href="3"<----this is page number />

注意:当一个页面中有两个或多个<h1>标记时,文本显示在一个标记<a>中。

但我需要这个

代码语言:javascript
复制
<a href="2">
 text-1
</a>
<a href="2">
 text-2
</a>

当页面中不是<h1>标记时,显示空<a>

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2014-04-20 13:24:01

不如:

代码语言:javascript
复制
for $h in collection("/db/INDEX")//h1
let $i := replace(document-uri(root($h)), ".*/(.*)\.html", "$1")
return
    <a href="{$i}">{string($h)}</a>
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/23181594

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档