我一直在尝试使用sxd-xpath crate查询 XML,但我似乎无法弄清楚如何处理节点集。
板条箱和使用
extern crate sxd_document;
extern crate sxd_xpath;
use sxd_document::parser;
use sxd_xpath::{Factory, Context, Value};
Run Code Online (Sandbox Code Playgroud)
实际代码
let package = parser::parse("<feed><title>hest</title><title>hest2</title><title>hest3</title><title>hest4</title></feed>").expect("failed to parse XML");
let document = package.as_document();
let factory = Factory::new();
let xpath = factory.build("/feed/title").expect("Could not compile XPath");
let xpath = xpath.expect("No XPath was compiled");
let context = Context::new();
let value = xpath.evaluate(&context, document.root()).expect("XPath evaluation failed");
Run Code Online (Sandbox Code Playgroud)
我想遍历每个节点并打印出 的值<title>,但我不明白该怎么做。
我是 Rust 世界的新手,来自 C# 和 Python。