Salut à tous !
J'ai créé un parseur XML grâce à <acronym title="Simple API for XML">SAX</acronym> pour un langage semblable au zCode.
Cependant, j'ai un problème :
Si l'utilisateur entre des caractères réservés à XML (<, >, &), ça bug.
Il faudrait que je les transforme en entités XML (<, >, &) avant de parser le XML.
Petit problème, par contre.
Si j'utilise une regexp comme :
chaine = sub('<', '<', chaine)
ça va également modifié les balises, car chaine (le texte de l'utilisateur) en contient (ou peut en contenir plutôt).
Alors, connaissez-vous un moyen de régler ce problème ?
Tu parses ton langage à la main ou tu utilises un truc du genre SAX, DOM, ElementTree ?
Dans le second cas, ça m'étonne que le parser ne gère pas ce genre de choses nativement...
Bon, par contre c'est plus "DOM-like" que "SAX-like", car il me semble que le parseur en question produit une représentation du code en mémoire, donc c'est un peu lourd si tu as besoin de parser de gros documents.
J’utilise SAX, mais je dois envoyer une chaîne au parseur qui, lui, doit avoir des balises entourées de < et > sinon il ne « verra » pas les balises.
SAX appelle des méthodes lorsqu’il « voit » des balises.
C’est pourquoi escape ne fonctionne pas…
Croyez-vous qu’il existe un autre moyen que ma regexp ?
Merci d’avance pour votre aide.
<SAX> Problème d'entités XML dans parseur
× Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
× Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.
Blond, bouclé, toujours le sourire aux lèvres...