pugixml (バージョン 1.6) を使用してノード pcdata を置き換えるエレガントなソリューションを探しています。たとえば、ノード セットを繰り返し処理し、子の値を何かに更新します。
pugi::xpath_node_set nodes = document.select_nodes("//a");
for (auto it = nodes.begin(); it != nodes.end(); it++)
{
std::cout << "before : " << it->node().child_value() << std::endl;
// SOME REPLACE GOES HERE
std::cout << "after : " << it->node().child_value() << std::endl;
}
私は以下を使用しました:
it->node().append_child(pugi::node_pcdata).set_value("foo");
しかし、名前が示すように、データを追加するだけですが、次の行に沿った関数が見つかりません:
it->node().remove_child(pugi::node_pcdata);
もう 1 つの注意点は、ノードの属性は重要であり、変更しないでおく必要があるということです。
ご協力いただきありがとうございます。