ວິທິການ XPath
- ບ່ອນໜ້າຫນັງ ວັດຖຸ XPath
- ບ່ອນໜ້າຫຼັງ ວິທິການ XPath
XPath ສາມາດໃຊ້ຄຳລະບຸສາຍຕາວິດໃນເອກະສານ XML ເພື່ອເລືອກຫົວອອກຫົວຫຼືຫົວອອກຫົວຈຳນວນ. ຫົວອອກຫົວແມ່ນຖືກເລືອກຜ່ານຕາວິດ (path) ຫຼື step.
ເອກະສານ XML ພາຍຸປະກາດ
ພວກເຮົາຈະໃຊ້ເອກະສານ XML ດັ່ງລຽງ.
<?xml version="1.0" encoding="ISO-8859-1"?> <bookstore> <book> <title lang="eng">Harry Potter</title> <price>29.99</price> </book> <book> <title lang="eng">Learning XML</title> <price>39.95</price> </book> </bookstore>
ເລືອກຫົວອອກຫົວ
XPath ສາມາດໃຊ້ຄຳລະບຸສາຍຕາວິດໃນເອກະສານ XML ເພື່ອເລືອກຫົວອອກຫົວ. ຫົວອອກຫົວແມ່ນຖືກເລືອກຜ່ານຕາວິດຫຼື step.
下面列出了最有用的路径表达式:
ທາງການການຊີ້ | ການອະທິບາຍ |
---|---|
nodename | ຄົ້ນຫາຫຼັກຊະນະທີ່ເປັນລູກຂອງຫຼັກດັ່ງກ່າວ. |
/ | ຄົ້ນຫາຫຼັກທີ່ເປັນຫຼັກຫຼັງຫຼັກສະຫຼັບ. |
// | ຈາກຫຼັກທີ່ກຳນົດການເລືອກຢູ່ບ່ອນປະຈຸບັນຕິດຕາມຫຼັກໃນແຫຼມບັນຊີທີ່ບໍ່ຄິດຂຶ້ນຫຼັງລັດສະນະຂອງຫຼັກຫຼັງຈາກຫຼັກທີ່ກຳນົດການເລືອກຄິດຂຶ້ນຫຼັງລັດສະນະຂອງຫຼັກຫຼັງ. |
. | ຄົ້ນຫາຫຼັກປະຈຸບັນ。 |
.. | ຄົ້ນຫາຫຼັກພໍ່ຂອງຫຼັກປະຈຸບັນ。 |
@ | ຄົ້ນຫາຄຸນຄ່າ。 |
ຕົວຢ່າງ
ໃນຕາຕະລາງດັ່ງລຽງນີ້,ພວກເຮົາໄດ້ລາຍງານທາງການການຊີ້ທີ່ມີຄຸນຄ່າຫຼືຜົນຂອງທາງການການຊີ້。
ຄຳສັບສິນ | ຜົນການຄຸ້ມຂັບ |
---|---|
bookstore | ຄົ້ນຫາຫຼັກຊະນະທີ່ເປັນລູກຂອງ bookstore。 |
/bookstore |
ຄົ້ນຫາຫຼັກ bookstore。 ຄວາມຄິດ: ຖ້າທາງການການຊີ້ເລີ່ມຈາກແສງຄວາມ /, ທາງການການຊີ້ຈະສະເໜີຫົນທາງມາຫຼັກທີ່ມີຄຸນຄ່າຫາກສະເພາະ. |
bookstore/book | ຄົ້ນຫາປະກອບ book ທີ່ເປັນລູກຂອງ bookstore。 |
//book | ຄົ້ນຫາປະກອບ book ທີ່ເປັນລູກຂອງທີ່ຢູ່ບ່ອນຫຼັງ bookstore ທີ່ບໍ່ຄິດຂຶ້ນຫຼັງລັດສະນະຂອງປະກອບ bookstore。 |
bookstore//book | ຄົ້ນຫາປະກອບ book ທີ່ເປັນລູກຂອງ bookstore ທີ່ຢູ່ບ່ອນຫຼັງ bookstore ທີ່ບໍ່ຄິດຂຶ້ນຫຼັງລັດສະນະຂອງປະກອບ bookstore。 |
//@lang | ຄົ້ນຫາປະກອບຂອງຄຸນຄ່າ lang。 |
ຄຳອອກ (Predicates)
ຄຳອອກຕັ້ງໃຈການຊີ້ຫຼັກຂອງຫຼັກທີ່ມີຄຸນຄ່າຫາກສະເພາະຫຼືທີ່ມີຄຸນຄ່າຫາກຈະກຳນົດຄຸນຄ່າຫາກວ່ານັ້ນ。
ຄຳອອກຖືກຈອງໃນກອງສະເປນ。
ຕົວຢ່າງ
ໃນຕາຕະລາງດັ່ງລຽງນີ້,ພວກເຮົາໄດ້ລາຍງານປະກອບທາງການການຊີ້ແລະຜົນຂອງທາງການການຊີ້ທີ່ມີຄຳອອກ。
ຄຳສັບສິນ | ຜົນການຄຸ້ມຂັບ |
---|---|
/bookstore/book[1] | ຄົ້ນຫາປະກອບ book ທີ່ເປັນລູກຊະນະທີ່ທຳອິດຂອງ bookstore。 |
/bookstore/book[last()] | ຄົ້ນຫາປະກອບ book ທີ່ເປັນລູກຊະນະທີ່ຫຼັງຈາກ bookstore。 |
/bookstore/book[last()-1] | ຄົ້ນຫາປະກອບ book ທີ່ເປັນລູກຊະນະທີ່ຫຼັງຈາກທີ່ຫຼັງສອງຂອງ bookstore。 |
/bookstore/book[position()<3] | ຄົ້ນຫາປະກອບ book ທີ່ເປັນລູກຊະນະທີ່ທຳອິດສອງຂອງ bookstore。 |
//title[@lang] | ຄົ້ນຫາປະກອບ title ທີ່ມີຄຸນຄ່າຂອງຂໍ້ມູນ lang。 |
//title[@lang='eng'] | ຄົ້ນຫາປະກອບ title ທີ່ມີຄຸນຄ່າຂອງໂຄງລະບຸ lang ພາຍໃນ eng。 |
/bookstore/book[price>35.00] | ຄົ້ນຫາປະກອບ bookstore ທີ່ມີປະກອບ book ທີ່ມີຄຸນຄ່າຂອງປະກອບ price ເພີ່ມຫຼາຍກວ່າ 35.00。 |
/bookstore/book[price>35.00]/title | 选取 bookstore 元素中的 book 元素的所有 title 元素,且其中的 price 元素的值须大于 35.00。 |
选取未知节点
XPath 通配符可用来选取未知的 XML 元素。
ການອະນຸມັດ | ການອະທິບາຍ |
---|---|
* | ຕິດຕັ້ງທຸກວັດຖຸສິນລະພາບ. |
@* | ຕິດຕັ້ງທຸກວັດຖຸຄວາມລວມ. |
node() | ຕິດຕັ້ງທຸກຕົວຈຸດ. |
ຕົວຢ່າງ
ໃນຕາມການຕາງໜ້າດ້ານລາຍການພາກສ່ວນໃຫຍ່, ພວກເຮົາລະບຸບຳນວຍຄວາມຄຸ້ມຂັບພາກສ່ວນລາຍການພາກສ່ວນນ້ອຍ, ແລະຜົນການຄຸ້ມຂັບຂອງພາກສ່ວນລາຍການພາກສ່ວນນ້ອຍ.
ຄຳສັບສິນ | ຜົນການຄຸ້ມຂັບ |
---|---|
/bookstore/* | ເລືອກທຸກລູກທຸກວັດຖຸຂອງວັດຖຸ bookstore. |
//* | ເລືອກທຸກວັດຖຸໃນເອກະສານ. |
//title[@*] | ເລືອກທຸກວັດຖຸ title ທີ່ມີຄວາມລວມ. |
ເລືອກຫົວຂໍ້ພາກສ່ວນຫຼາຍ
ທ່ານສາມາດເລືອກຫົວຂໍ້ພາກສ່ວນຫຼາຍຫຼາຍໄດ້ຜ່ານການໃຊ້ສິ່ງສະແດງ “|”.
ຕົວຢ່າງ
ໃນຕາມການຕາງໜ້າດ້ານລາຍການພາກສ່ວນໃຫຍ່, ພວກເຮົາລະບຸບຳນວຍຄວາມຄຸ້ມຂັບພາກສ່ວນລາຍການພາກສ່ວນນ້ອຍ, ແລະຜົນການຄຸ້ມຂັບຂອງພາກສ່ວນລາຍການພາກສ່ວນນ້ອຍ.
ຄຳສັບສິນ | ຜົນການຄຸ້ມຂັບ |
---|---|
//book/title | //book/price | ຄຸ້ມຂັບທຸກວັດຖຸ title ແລະ price ຂອງວັດຖຸ book. |
//title | //price | ຄຸ້ມຂັບທຸກວັດຖຸ title ແລະ price ໃນເອກະສານ. |
/bookstore/book/title | //price | ຄຸ້ມຂັບທຸກວັດຖຸ title ຂອງວັດຖຸ bookstore ແລະທຸກວັດຖຸ price ໃນເອກະສານ. |
- ບ່ອນໜ້າຫນັງ ວັດຖຸ XPath
- ບ່ອນໜ້າຫຼັງ ວິທິການ XPath