如何在 R 的 xml2 包中查找与给定属性名称关联的 xpath
How to find the xpath associated with a given attribute name in R's xml2 package
我正在使用 R 的 xml2 包来操作 xml 文件。我知道属性的名称并想找到它的 xpath。
我知道我可以在 xml 文档中搜索给定的节点名称和 return 关联的 xpath。例如,在下面的代码中,我正在搜索节点名称 'CHILD_NODE' 和 returning xpath.
library(xml2)
library(dplyr)
# Make example data
dat <- read_xml(
"<PARENT_NODE>
<CHILD_NODE attr_name='a'>
</CHILD_NODE>
</PARENT_NODE>"
)
# Find xpath to CHILD_NODE:
xpath = dat %>%
xml_find_all('//CHILD_NODE') %>%
xml_path()
# "/PARENT_NODE/CHILD_NODE"
如果我改为指定属性名称,如何找到 xpath?例如。在上面的示例中,我想在 xpath (/PARENT_NODE/CHILD_NODE)
?
中搜索属性“attr_name
”和 return
正确的 xpath 是
dat %>%
xml_find_all('//*[@attr_name]') %>%
xml_path()
*
搜索所有节点,@
允许您指定要罚款的属性。
我正在使用 R 的 xml2 包来操作 xml 文件。我知道属性的名称并想找到它的 xpath。
我知道我可以在 xml 文档中搜索给定的节点名称和 return 关联的 xpath。例如,在下面的代码中,我正在搜索节点名称 'CHILD_NODE' 和 returning xpath.
library(xml2)
library(dplyr)
# Make example data
dat <- read_xml(
"<PARENT_NODE>
<CHILD_NODE attr_name='a'>
</CHILD_NODE>
</PARENT_NODE>"
)
# Find xpath to CHILD_NODE:
xpath = dat %>%
xml_find_all('//CHILD_NODE') %>%
xml_path()
# "/PARENT_NODE/CHILD_NODE"
如果我改为指定属性名称,如何找到 xpath?例如。在上面的示例中,我想在 xpath (/PARENT_NODE/CHILD_NODE)
?
attr_name
”和 return
正确的 xpath 是
dat %>%
xml_find_all('//*[@attr_name]') %>%
xml_path()
*
搜索所有节点,@
允许您指定要罚款的属性。