XPath 选取未知节点 & 选取若干路径
选取未知节点
通配符 | 描述 |
* | 匹配任何元素节点,选择所有由星号之前的路径所定位的元素 |
@* | 匹配任何属性节点 |
not(@*) | 匹配没有任何属性的节点 |
node() | 匹配任何类型的节点 |
选取若干路径
运算符 | 描述 |
| | 选取若干个路径 |
桔色字体表示使用语法匹配的结果
语法:/html/body/div/p/* 选择所有路径依附于/html/body/div/p/的元素 <html lang="en"> <head>
</head>
<body>
<div> <p id="s1"> <title>20</title> <span></span> </p> <p id="s2"></p> <p></p> <div> </body> </html>
语法:/*/*/*/p 选择所有的有3个祖先元素的p元素,即在第四层的p元素 <html lang="en"> <head> </head> <body> <div> <p id="s1"> <title>20</title> <span></span> </p> <p id="s2"></p> <p></p> <div> </body> </html>
语法://* 选择所有元素
<html lang="en">
<head>
</head>
<body>
<div>
<p id="s1">
<title>20</title>
<span></span>
</p>
<p id="s2"></p>
<p></p>
<div>
</body>
</html>
语法://title|//span 选择所有的tltle元素和span元素 <html lang="en"> <head> </head> <body> <div> <p id="s1"> <title>20</title> <span></span> </p> <p id="s2"> <title>20</title> <span></span> </p> <p></p> <div> </body> </html>
语法:/html/body/div/p/title|/html/body/div/p/span 选择html下body下的div下的p的title元素和span元素 <html lang="en"> <head> </head> <body> <div> <p id="s1"> <title>20</title> <span></span> </p> <p id="s2"> <title>20</title> <span></span> </p> <p></p> <div> </body> </html>