我有以下XML:
<w:p w14:paraId="07E73137" w14:textId="77777777" w:rsidP="00D279DF" w:rsidR="00D279DF" w:rsidRDefault="00D279DF">
</w:p>
<w:p w14:paraId="07E73138" w14:textId="77777777" w:rsidP="00D279DF" w:rsidR="00D279DF" w:rsidRDefault="00D279DF>
<w:r w:rsidRPr="00922473">
<w:t xml:space="preserve">Visual attributes </w:t>
</w:r>
<w:ins w:author="RKH RKH" w:date="2016-12-17T16:40:00Z" w:id="0">
<w:r>
<w:t>an</w:t>
</w:r>
</w:ins>
<w:del w:author="RKH RKH" w:date="2016-12-17T16:40:00Z" w:id="1">
<w:r w:rsidDel="008B2A6A">
<w:delText>the</w:delText>
</w:r>
</w:del>
</w:p>
第一个<w:p>
元素不包含任何<w:ins>
和<w:del>
子元素。
但是,第二个<w:p>
确实包含<w:ins>
和<w:del>
元素。
我目前正在使用以下内容选择所有段落元素:
@all_paragraph_nodes = @file.xpath('//w:p')
我想只选择包含至少一个<w:ins>
元素或<w:del>
元素的段落元素。
我怎么能用Nokogiri做到这一点?
答案 0 :(得分:1)
您可以使用:
@all_paragraph_nodes = @file.xpath('//w:p[w:ins or w:del]')
请注意,您的XML第3行中有拼写错误:
w:rsidRDefault="00D279DF
没有关闭。