我对XPath中!=
和not()
之间的区别有疑问。
例如,这是我的XML数据库:
<Books>
<Book title="one">
book1
</Book >
<Book title="one">
book2
</Book >
<Book >
book3
</Book >
</Books>
这两个XPath查询之间有什么区别?
//book[@title!='one']
//book[not(@title)]
因此,如果我要问:我从第一个请求得到多少本书,我从第二个请求得到多少本书。
在上面带有2请求的示例中,我是否将得到最后一本书的“ book3”元素?
谢谢。
答案 0 :(得分:5)
//book[@title!="one"]
表示”选择不包含等于title
的{{1}}属性的书节点”
'one'
表示“完全不包含//book[not(@title)]
属性的书节点”
可以用title
作为not()
来写第一个。