Sujet : Re: XML : texte en forme de balise
De : om+news (at) *nospam* miakinen.net (Olivier Miakinen)
Groupes : fr.comp.lang.pythonDate : 26. May 2023, 21:32:11
Autres entêtes
Organisation : There's no cabale
Message-ID : <u4r50c$2hq9$1@cabale.usenet-fr.net>
References : 1 2 3
User-Agent : Mozilla/5.0 (X11; Linux x86_64; rv:52.0) Gecko/20100101 Firefox/52.0 SeaMonkey/2.49.4
Bonjour,
Le 26/05/2023 09:04,
pata...@gmail.com m'a répondu :
j'ai cette chaîne de caractères à traiter "<a><b>this is <bad> tag text</b></a>".
Question subsidiaire, existe-t-il des fonctions qui traitent du texte formaté
en tant que HTML plutôt que XML ? Ça pourrait être une solution, puisque le
formalisme de HTML est moins rigide que celui de XML.
--
Olivier Miakinen
<aparté>Ce serait bien si tu pouvais utiliser une vrai lecteur de news sur un vraiserveur plutôt que de passer par cette horreur qu'est Google groupes.
Ça te permettrait :
- de choisir un nom qui ne soit pas ton adresse de courriel charcutée ;
- que la signature soit supprimée automatiquement des réponses ;
- que les lignes ne soient pas trop longues.
</aparté>
cette petite chaîne est un exemple et malheureusement, je ne connais pas à l'avance les "bad tag" (<????>).
Peu importe qu'ils soient connus ou inconnus. En XML, une balise ouvrante doit
être suivie d'une balise fermante : <bad>...</bad>, ou alors elle doit être
auto-fermante : <bad/>.
Donc, si tu as un <b> suivi de <bad> puis de </b>, la syntaxe est incorrecte
et un outil automatique ne devrait rien pouvoir en faire. Et ce n'est pas en
fournissant une liste de « mauvaises » balises que ça pourrait être corrigé.
ma question serait donc plutôt : comment fournir à xml.etree.ElementTree la liste des tags à considérer ?
C'est donc une mauvaise question. Désolé si ma réponse te paraît trop brutale.
dans XML il est question de namespace (espace des noms) : je suppose que c'est sans doute destiné à ça...
En l'occurrence, non. La chaîne "<a><b>this is <bad> tag text</b></a>" n'est
*pas* du XML bien formé, alors aucun namespace ne pourra corriger ce bug.
-- Olivier Miakinen