Recherche un Parser Générique
Bonjour,
Je recherche un Parser Générique.
J'ai besoin d'analyser une dizaine de type de fichiers différents.
Ce sont des fichiers de Control permettant le chargement d'objets divers dans des Progiciels. Ils font en général plusieurs dizaines de Mo.
Il me semble que dans CPAN j'avais vu quelque chose d'approchant, mais impossible de le retrouver.
Le style des fichiers est plutôt comme ceci :
Code:
1 2 3 4 5 6 7 8
|
objniveau1 objtype(name) param2('valeur')
param3 param4(valeur)
param5 etc...
objniveau2
objtype(name) param2 param8(valeur) param9('valeur')
param3 param4 param7
objniveau1 etc... |
Il n'y a pas d'ordre dans les paramètres, quelques fois la valeur n'est pas présente et peut être entre simple cote dans les parenthèse.
Pour d'autre fichier la valeur suit le paramètre sans pour autant que cette valeur soit obligatoire (donc on se retrouve sur un mot clé).
Pas d'indentation, pas de balise de début et/ou de fin.
La définition d'un objet et de ses objets fils peut être sur plusieurs lignes.
J'ai essayé en traficotant des parser JSON ou YAML sans grande réussite :oops:
J'ai aussi développé un module qui me rend quelques services, mais il est trop compliqué, torturé, pas assez générique et me fait monter la tension quand je le modifie. 8O
Par avance merci de votre aide.
DCA