J'ai besoin de montrer les 100 premiers caractères d'un texte HTML, ce qui signifie que je dois choisir les 100 premiers caractères qui sont pas tags, puis fermez les balises ouvertes en laissant un HTML équilibré. Y a-t-il une bibliothèque qui peut le faire? Ou y a-t-il une manière triviale de le faire que je manque? Le texte est écrit à l'origine en Textile qui peut contenir du HTML et qui contient du HTML, donc je me suis dit que je ferais mieux de le transformer entièrement en HTML avant de le traiter, mais si quelque chose peut le faire au niveau Textile, je suis content aussi.Extrait extrait de HTML avec Ruby?
1
A
Répondre
0
Jetez un oeil à Nokogiri
1
Voici comment j'obtenir les 100 premiers caractères de texte. Vous devrez peut-être modifier selon vos besoins
require 'nokogiri'
def get_first_100_chars
doc = Nokogiri::Slop(open 'html_file.html')
text = doc.html.body.text
return text[0..99]
end
Vous ne savez pas comment équilibrer le code HTML. Va poster si je découvre.
Je suis déjà familier avec Nokogiri, mais j'ai besoin de plus qu'un simple analyseur pour y arriver. Peut-être que Nokogiri peut le faire, mais je ne l'ai pas encore compris. – Pablo
Bien que ce lien puisse répondre à la question, il est préférable d'inclure les parties essentielles de la réponse ici et de fournir le lien pour référence. Les réponses à lien uniquement peuvent devenir invalides si la page liée change. Donc dans ce cas - vous pourriez expliquer pourquoi/comment nokogiri est utile pour l'affiche. –
Vous avez raison bien sûr. Mais êtes-vous les gars les bots? Je trouve suspect comment 2 personnes soudainement le même jour ajoutent un commentaire à un poste de 2 ans, et la première phrase est exactement la même chose. – Kurt