以下是XMl文件 -
<Chapters>
<Chapter n="1">
<Desc>....</Desc>
<References>
<BookRef>HTML : in 21 Days</BookRef>
<Page>12, 13</Page>
<BookRef>HTML : Unlimited</BookRef>
<Page>21, 22</Page>
<BookRef>The Complete Reference - HTML</BookRef>
<Page>32-35</Page>
</References>
</Chapter>
<Chapter n="2">
<Desc>....</Desc>
<References>
<BookRef>HTML : in 21 Days</BookRef>
<Page>52, 53</Page>
<BookRef>The Complete Reference - HTML</BookRef>
<Page>132-145</Page>
<BookRef>The Complete Reference - Javascript</BookRef>
<Page>132-145</Page>
</References>
</Chapter>
</Chapters>
我想列出
- 所有包含HTML
字的使用
/Chapters/Chapter/References[BookRef contains text 'HTML']/BookRef
但所有人都在展示...... !!什么是XQuery来检索它?
答案 0 :(得分:3)
尝试以下方法:
/Chapters/Chapter/References/BookRef[. contains text 'HTML']
否则,将返回所有References
个节点,其中BookRef
节点包含HTML
,并且以下步骤将返回所有BookRef
个节点(即,您丢失了哪些BookRef节点具有搜索到的令牌的信息。
答案 1 :(得分:3)
你想要:
/Chapters/Chapter/References/BookRef[contains(., 'HTML')]
答案 2 :(得分:2)
使用XPath = /Chapters/Chapter/References/BookRef[contains(., 'HTML')]