|
Publicité ' | |||||||||||||||||||||||
|
|
#1 |
|
Membre confirmé
![]() ![]() Inscription : octobre 2009 Messages : 88 ![]() |
Bonjour,
Je cherche un analyseur syntaxique écrit en Actionscript afin de parcourir des textes selon une grammaire maison. Un peu à la façon de Boost.spirit pour ceux qui connaissent. Je n'ai rien trouvé sur le sujet. Est-ce que vous en connaissez une ? |
|
|
00
|
|
|
#2 |
|
Membre du Club
![]() Inscription : avril 2011 Messages : 58 ![]() |
Je connais pas, mais t'as essayé de parser tes lignes avec une expression régulière ?
|
|
|
00
|
|
|
#3 |
|
Membre confirmé
![]() ![]() Inscription : octobre 2009 Messages : 88 ![]() |
|
|
|
00
|
|
|
#4 |
|
Membre du Club
![]() Inscription : avril 2011 Messages : 58 ![]() |
tu peut montrer un bout des données à parser et ce qu'il faut vérifier dessus ?
|
|
|
00
|
|
|
#5 | ||||
|
Membre confirmé
![]() ![]() Inscription : octobre 2009 Messages : 88 ![]() |
Je suis justement en traine de chercher un compromis entre la forme du texte à traiter et l'expressivité dont j'ai besoin. Un exemple de texte serait :
Code :
Code :
Entre temps j'ai croisé ANTLR qui semble pouvoir générer un analyseur en Actionscript. Je n'ai pas encore approfondi. |
||||
|
|
00
|
|
|
#6 | ||
|
Membre du Club
![]() Inscription : avril 2011 Messages : 58 ![]() |
T'as regardé du cote de JAVA ?
transférer du JAVA en Actionscript ca doit pas être la fin du monde, les langages sont proches. Tu as des applis JAVA open source qui gèrent la coloration syntaxique à partir de fichiers de description (genre Eclipse qui supporte plusieurs langages). Ils doivent donc faire ce que tu as besoin. Sinon ça m'a pas l'air si complexe à coder. Je pense que tu peux t'y prendre comme ceci : - nettoyage de base (on vire les espaces, les retours à la ligne, les commentaires) > c'est une série de regexp à appliquer - Parser la syntaxe en plusieurs passage pour faire un arbre - premier passage tu gère que les () {} sans tenir compte des contenus Ca te fait des gros blocs texte organisés en arbre - deuxième passage tu parse le contenu de tes blocs et créé les noeuds en fonction de ce que tu rencontre bonjour > noeud mot clé "aa"> noeud string 1234 > noeud int - Vérifier que chaque noeud de l'arbre contient les paramètres attendus. La difficulté vient surtout de comment tu dois gérer les erreurs. Je créerais un arbre à coté avec des pointeurs sur toutes les parties de ton texte chaque noeud serait un objet : Code :
|
||
|
|
00
|
Copyright © 2000-2012 - www.developpez.com