Das Problem besteht darin, dass das Parsing des XML als Fragment ein Teil-XML-Dokument zurückgibt, d. h. ein DocumentFragment
, das keinen Stamm hat:
wobei ein vollständiges XML-Dokument eine Wurzel hat:
%Vor% Standardmäßig sucht Nokogiri von der Wurzel des Dokuments aus mit einem XPath wie //Path
:
Aber das scheitert mit dem Fragment wegen der fehlenden Wurzel:
%Vor%Der Trick besteht darin, Nokogiri zu sagen, wo es beim Umgang mit dem Fragment hingehen soll. Verwenden einer relativen Suche oder eines Platzhalters:
%Vor%oder
%Vor% Wenn Sie nur eine Zeichenkette haben, analysieren Sie stattdessen einfach mit Nokogiri:XML
:
gibt Ihnen eine Wurzel, von der Sie den xpath //Part
wie erwartet verwenden können.
Tags und Links ruby xml xml-parsing nokogiri