perl et balisage: un algo? (xml inside)

perl et balisage: un algo? (xml inside) - Perl - Programmation

Marsh Posté le 04-11-2003 à 15:21:50    

Bonjour,
Je n'arrive pas à mettre au point un algo efficace pour traiter le problème suivant:  
j'ai trois fichiers d'entrée présentant un même texte balisé de façons différentes
ex:
premier fichier : mot à mot
<w id="word_0">Les</w>
<w id="word_1">Misérables</w>
 
deuxième fichier: phrase par phrase
<s>Les Misérables</s>
<s>Un roman de Victor Hugo</s>
 
troisième fichier: balisage structurel:
<text><body><div><head>Les Misérables</head><p>Un roman de Victor Hugo</p>
 
Ajoutons que le fichier mot-à-mot n'a pas exactement les mêmes mots que les autres fichiers  
(ex: <w id="word_12">de</w>  
<w id="word_13">le</w>
à la place de "du" )
et que les balises peuvent s'imbriquer. ex <div><div></div><div></div></div>
 
 
Mon but est de synchroniser les trois fichiers pour en obtenir un quatrième avec des pointeurs sur les identifiants de mot, qui en gros ferait ça
<text span=word_0..word_12000>
<body span=word_0..word 10000>  
<head id=head_0 span=word_0..word_1>
<s id=s_0 span=word_0..word_1>
par exemple
 
Je suppose que le mieux consiste à repérer les balises ouvrantes et à les pusher dans une pile pour les poper lorsqu'on rencontre la balise fermante correspondante, mais je n'arrive pas à mettre au point un algo me permettanr de faire ça tout en synchronisant les fichiers, c'est à dire en générant les bons pointeurs (span)  sur les mots.  
 
Si vous avez une idée à me soumettre, je vous en serai très reconnaissante :jap:


Message édité par stphanie le 04-11-2003 à 16:36:28
Reply

Marsh Posté le 04-11-2003 à 15:21:50   

Reply

Marsh Posté le 04-11-2003 à 17:54:54    

fait 2 phases : une phase où tu lis les 3 fichiers et mets les arbres syntaxiques en mémoire et une phase où tu synchronises les arbres syntaxiques.


---------------
trainoo.com, c'est fini
Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed