考虑这个简单的例子
example_xml <- '<?xml version="1.0" encoding="UTF-8"?>
<file>
<book>
<text>abracadabra</text>
<node></node>
</book>
<book>
<text>hello world</text>
<node></node>
</book>
</file>'
myxml <- xml2::read_xml(example_xml)
现在,运行它按预期工作
> myxml %>% xml_find_all('//book')
{xml_nodeset (2)}
[1] <book>\n <text>abracadabra</text>\n <node/>\n</book>
[2] <book>\n <text>hello world</text>\n <node/>\n</book>
但寻找其text
属性包含wor
不的节点。
> myxml %>% xml_find_all('//book[contains(@text, "wor")]')
{xml_nodeset (0)}
这里有什么问题?如何使用正则表达式(或部分字符串匹配)xml2
?
谢谢!