Y at-il un moyen de diviser une longue chaîne de HTML après N mots? Il est évident que je pourrais utiliser:Split HTML après N mots en python
' '.join(foo.split(' ')[:n])
pour obtenir les premiers mots de n d'une chaîne de texte brut, mais cela pourrait diviser au milieu d'une balise html, et ne produira pas html valide car il ne fermera pas la tags qui ont été ouverts.
Je dois le faire sur un site zope/plone - s'il y a quelque chose de standard dans les produits qui peuvent le faire, ce serait idéal.
Par exemple, dire que j'ai le texte:
<p>This is some text with a
<a href="http://www.example.com/" title="Example link">
bit of linked text in it
</a>.
</p>
et je demande à diviser après 5 mots, il doit retourner:
<p>This is some text with</p>
7 mots:
<p>This is some text with a
<a href="http://www.example.com/" title="Example link">
bit
</a>
</p>
Voulez-vous ignorer les balises afin qu'elles ne soient pas divisées? En d'autres termes, n'obtenez et ne divisez que du texte qui n'est pas contenu dans une balise. – monkut
Cherchez-vous à scinder du texte de document encapsulé entre des balises (par exemple, entre les balises
et
)? – gotgenes