我正在尝试使用 R 中的 xml 包解析网页。XML 在属性名称中有一些特殊字符,例如:<B name="A < 0">
,这是 getNodeSet() 不喜欢的。我认为使用的全部目的<
是避免 < 被保留的问题。
这是一个引发错误的可重现示例。
x <- '
<A>
<B name="1">
<C name="A < 0"> Value </C>
</B>
</A>
'
getNodeSet(xmlRoot(xmlTreeParse(x)),"/A/B/C")
如何使用 getNodeSet 干净地进行此解析?
我有一个快速的解决方法,我在原始文本上使用 gsub 来查找和替换 的实例<
,但我担心替换我不打算替换的东西。该文件也有"
属性名称中的实例。同样的问题。
有没有比 gsub 更优雅、更通用的解决方案?
非常感谢!