xpath -- a script to query XPath statements in XML documents.
xpath算是command line的xml查詢工具。
假設有個xml檔(book.xml)內容如下:
<?xml version="1.0"?>
<root>
<book>
<name>b1</name>
<auth>Brook</auth>
<price>$10</price>
</book>
<book>
<name>b2</name>
<auth>Brook</auth>
<price>$15</price>
</book>
<store location="tw" tel="0921" name="Dr.B">
</root>
使用'/A/B'尋找A底下的B。
brook@desktop:~$ xpath -e '/root/book' -q book.xml
<book>
<name>b1</name>
<auth>Brook</auth>
<price>$10</price>
</book>
<book>
<name>b2</name>
<auth>Brook</auth>
<price>$15</price>
</book>
brook@desktop:~$ xpath -e '/root/book[1]/name' -q book.xml
<name>b1</name>
brook@desktop:~$ xpath -e '/root/book[2]/name' -q book.xml
<name>b2</name>
使用//xx則會尋找xx這個tag,不管在哪個節點位置。
brook@desktop:~$ xpath -e '//name' -q book.xml <name>b1</name> <name>b2</name>
使用@xx取得xx的attribute。
brook@desktop:~$ xpath -e '/root/store/@name' -q book.xml name="Dr.B"
使用text()取得node的內容。
brook@desktop:~$ xpath -e '//book[1]/name/text()' -q book.xml b1
其他用法請參考:
http://www.w3.org/TR/xpath
http://zh.wikipedia.org/wiki/XPath

沒有留言:
張貼留言