Je HTML comme ceci:Comment trouver du texte à travers les limites de balises HTML (avec des pointeurs XPath comme résultat)?
<div>Lorem ipsum <b>dolor sit</b> amet.</div>
Comment puis-je trouver une correspondance à base de texte brut pour ma chaîne de recherche dans ce ipsum dolor
HTML? J'ai besoin des pointeurs de nœud XPath de début et de fin pour la correspondance, plus les index de caractères pour pointer à l'intérieur de ces nœuds de début et de fin. J'utilise Nokogiri pour travailler avec le DOM, mais toute solution pour Ruby est bonne.
Difficulté:
Je ne peux pas
node.traverse {|node| … }
par les DOM et faire une recherche de texte brut chaque fois qu'un nœud de texte vient à travers, parce que ma chaîne de recherche peut franchir les frontières d'étiquette.Je ne peux pas faire une recherche en texte brut après la conversion du HTML en texte brut, car j'ai besoin des index XPath comme résultat.
je pourrais mettre en œuvre moi-même avec traversal arbre de base, mais auparavant, je me demande s'il y a une fonction Nokogiri ou astuce pour le faire plus confortablement.