Tutoriel Python : Méthode de fractionnement pour résoudre le problème de position superposée
P粉063039990
2023-08-13 15:52:41
<p>Mon objectif est de diviser les positions qui se chevauchent pour les utiliser en HTML. Par exemple, j'ai ce texte : </p>
<blockquote>
<p>Un Deux Trois</p>
</blockquote>
<p>Je souhaite que les deuxième et troisième mots soient en gras et que les deux premiers mots soient en italique. On obtient ce résultat : </p>
<pre class="brush:php;toolbar:false;">[
{ "start": 4, "end": 13, "markup": "BOLD" },
{ "start": 0, "end": 7, "markup": "ITALIC" }
]≪/pré>
<p>Si l'on souhaite appliquer les balises HTML par position, on obtient ce résultat : </p>
<pre class="brush:php;toolbar:false;"><bold>Un <em>Deux</bold> Trois</em></pre>
<p>Vous voyez le chevauchement ? <code><em></code>la balise d'ouverture est interrompue par la balise de fermeture <code></bold></code> Cela devrait ressembler à ceci : </p>
<pre class="brush:php;toolbar:false;"><bold>un<em>deux</em></bold><em>trois</em></ pre>
<p>et emplacement : </p>
<pre class="brush:php;toolbar:false;">[
{ "start": 4, "end": 7, "markup": "BOLD" },
{ "start": 7, "end": 13, "markup": "BOLD" },
{ "start": 0, "end": 7, "markup": "ITALIC" }
]≪/pré>
<p>P.S. Ne vous inquiétez pas du changement de position d'origine après l'application du balisage. J'ai écrit une bonne solution. </p>
<p>J'ai essayé de mettre en œuvre certaines solutions, mais cela semble être une tâche difficile pour moi. </p>
Vous pouvez corriger automatiquement la structure HTML à l'aide de l'API Javascript DomParser