xpath语法笔记
xpath是在xml文档中查找信息的语言, 其语法整理如下:
| div | div下的所有子节点 |
| /div | 根节点下的div |
| //div | 匹配所有的div |
| . | 当前节点 |
| .. | 父节点 |
| @lang | 属性为lang的所有节点 |
| div[1] | 选取第一个节点 |
| div[last()] | 选取最后一个节点 |
| div[last()-1] | 选取倒数第二个节点 |
| div[positon()<3] | 选取前两个节点 |
| div[@lang] | 选取有lang属性的节点 |
| div[@lang='eng'] | 选取lang属性值为eng的节点 |
| div[price>35.00] | 选取price属性大于35的节点 |
| * | 所有节点 |
| @* | 任何属性 |
| | | 可以选取多个路径,用 | 隔开 |
| / | 连接路径选择 |
| ./ancestor::* | 当前节点的所有先辈节点(父节点,祖父节点) |
| ./ancestor-or-self::* | 当前节点的所有先辈节点(父节点,祖父节点)及本身 |
| ./attribute::* | 选取当前节点的所有属性 |
| ./child::* | 当前节点的所有子节点 |
| ./descendant::* | 当前节点的所有后代节点(子节点、孙节点) |
| ./following::* | 选取文档中当前节点结束标签后的所有节点 |
| ./following-sibling::* | 选取当前节点之后的兄弟节点 |
| ./parent::* | 选取当前节点的父节点 |
| ./preceding::* | 选取文档中当前节点开始标签前的所有节点 |
| ./preceding-sibling::* | 选取当前节点之前的兄弟节点 |
| ./self::* | 选取当前节点 |
| text() | 节点文本 |
| contains(@id,"ma") | 选取id属性包含 ma 的节点(div[contains(@id, ""ma)]) |
| starts-with(@id,"ma") | 选取id属性以 ma 开头的节点(div[starts-with(@id, ""ma)]) |

浙公网安备 33010602011771号