VerInfo
Messages postés20Date d'inscriptionmercredi 14 mars 2012StatutMembreDernière intervention 3 juillet 2012
-
14 mars 2012 à 11:26
VerInfo
Messages postés20Date d'inscriptionmercredi 14 mars 2012StatutMembreDernière intervention 3 juillet 2012
-
15 mars 2012 à 09:46
Salut,
Je cherche un code en JAVA qui me permet d'analyser une chaîne de caractère et indiquer s'il existe une erreur syntaxique Exemple : (a*b) "la chaîne à analyser" mon programme doit lever une exception si une erreur est détectée par exemple si je saisie "(a*b" il doit mentionner qu'une parenthèse manquante avec précision de l'endroit de l'erreur.
Donc mon programme doit fournir le même traitement que celui de la classe "PatternSyntaxeException" du paquatge Regex .
VerInfo
Messages postés20Date d'inscriptionmercredi 14 mars 2012StatutMembreDernière intervention 3 juillet 20122 14 mars 2012 à 20:49
Donc j'ai ces deux classes mais j'arrive pas à les utiliser à fin de répondre à mes besoins ,et avoir un programme exécutable qui permet de détecter et indiquer les erreurs générées
Si tu peux m'aider à m'en sortir je te serais vraiment reconnaissante
cs_Julien39
Messages postés6414Date d'inscriptionmardi 8 mars 2005StatutModérateurDernière intervention29 juillet 2020369 15 mars 2012 à 08:55
Surtout, ton problème principal c'est que tu n'as pas assez réfléchis avant de te lancer :
Tu ne sais pas comment tu vas réaliser ton analyse syntaxique et pourtant, tu as déjà beaucoup de code écrit et qui plus est, tu n'as pas l'air d'avoir testé quoi que ce soit.
A ta place, je repartirais de zéro en me fixant des objectifs simples et en proposant sur le papier dans un premier temps des algorithmes qui permettent de résoudre tes problèmes.
Si tu veux réaliser une programmation objet propre, je te conseil de créer plusieurs classes de service avec des utilités différentes. Par exemple :
- une classe qui permet de déterminer le type de ligne : affectation, déclaration, appel de méthode sur une ligne simple
- Une classe qui permet de décomposer une ligne et qui appellera la première classe
- En fonction du type de ligne simple une classe qui te permet de vérifier la syntaxe
Ce n'est qu'un début, juste une piste de travail, mais de cette manière, tu pourras avoir des classes un peu plus modulaires et plus simples, ton code sera donc plus facile à comprendre.
Il faut savoir que tu t'engages sur un travail long et assez complexe. Dans ce cas, il faut prendre le temps de réfléchir.
Est ce que tu connais le design pattern Composite (au vu de la qualité de ton code, je dirais non :) ), il peut vraiment te rendre de grand services sur la décomposition d'une ligne de code, je posterai un petit tutoriel dans la matinée sur ce pattern, et je te donnerai le lien.
Vous n’avez pas trouvé la réponse que vous recherchez ?
J'ai posté cette source il y a quelques temps, ce n'est pas vraiment la même chose que toi, c'est de l'analyse syntaxique sur une expression mathématique pour en déterminer le résultat. C'est d'un niveau assez élevé, je ne sais pas si tu peux comprendre le code.
VerInfo
Messages postés20Date d'inscriptionmercredi 14 mars 2012StatutMembreDernière intervention 3 juillet 20122 15 mars 2012 à 09:46
merci bien pour ton aide ainsi que tes conseilles et je vais prendre en considération tes remarques
mais ce que j'ai voulu savoir un exemple d'algorithme qui me permettra de faciliter la tâche, car j'ai pleins de truc dans ma tête et je sais pas d'où je vais commencer