En tant que résultat de recherche, j'obtiens le contenu autour du mot de recherche. Mais il ne s'agit que d'une sous-partie de la page entière et ne comprend que les balises qui se trouvent à proximité du mot de recherche. Si la correspondance (ouverture/fin) est plus éloignée, je reste avec des balises HTML déséquilibrées. Ces balises déséquilibrées peuvent faire l'objet d'une mise en page au fur et à mesure que le navigateur tente d'équilibrer l'utilisation des balises d'un autre niveau.Comment nettoyer la partie source HTML?
exemple
cela pourrait être la page entière:
<li>
<h3>Ang my oniuse.</h3>
<p>Oh! any or said faing ear Dand and tion on so wor st wouter and abox
a makess stand he he sne at mon the nany ing a me come hink floney a
naiday. Smiler yousee lurneremiley boll his a grog.</p>
</li>
<li>
<h3>I'l hat seelectler</h3>
<p> Imay e ney, agat nould a fiver, and and hishuch what gook, ley hires
he cand and onius mon'l, handent a flit's and, th whey, hat wou used his
thend that ance, he ned and me lood says wou hed set pidays far it
conted, and seell yarty.</p>
</li>
recherche de seelectler
pourrait entraîner une partie HTML comme:
naiday. Smiler yousee lurneremiley boll his a grog.</p>
</li>
<li>
<h3>I'l hat <b>seelectler</b></h3>
<p> Imay e ney, agat nould a fiver, and and hishuch what gook, ley hires
he cand and onius mon'l, handent a flit's and, th whey, hat wou used his
Maintenant, la balise p et la li les balises sont déséquilibrées et avec les balises de fermeture, le navigateur essaie de fermer la balise p, qui pourrait être nd texte, et le li-tag qui pourrait être autour de chaque entrée trouvée.
Mais la prochaine ouverture de ces balises a les mauvaises classes css et certaines balises div entre li et p sont maintenant sans correspondance et la fermeture à la fin peut fermer les balises div à partir de la disposition des colonnes.
Résultat: La mise en page complète est interrompue.
Le résultat souhaité pourrait être soit (tous les tags non appariés sont appairés, cela ne peut pas être à toute épreuve):
<li><p>
naiday. Smiler yousee lurneremiley boll his a grog.</p>
</li>
<li>
<h3>I'l hat <b>seelectler</b></h3>
<p> Imay e ney, agat nould a fiver, and and hishuch what gook, ley hires
he cand and onius mon'l, handent a flit's and, th whey, hat wou used his
</p></li>
ou:
naiday. Smiler yousee lurneremiley boll his a grog.
<h3>I'l hat <b>seelectler</b></h3>
Imay e ney, agat nould a fiver, and and hishuch what gook, ley hires
he cand and onius mon'l, handent a flit's and, th whey, hat wou used his
mais cette solution pourrait perdre la disposition importante par exemple sauts de ligne.
Existe-t-il un viewhelper qui peut nettoyer les balises HTML déséquilibrées en ajoutant les parties manquantes ou en supprimant les parties restantes?
Existe-t-il un algorithme/regexp pour détecter les tags non équilibrés?
De quoi exactement avez-vous besoin pour élaborer davantage? –
résultats attendus ajoutés –
Je pense que son problème d'analyseur html dans l'extension index_search. il retournera le résultat avec la balise html. vous devez formater le résultat manuellement. Cochez cette réponse https://stackoverflow.com/questions/43848632/indexed-search-extbase-htmltags-in-output?answertab=active#tab-top. J'espère que ceci vous aidera! –