Suppression des commentaires en java
riyad25h
Messages postés
7
Date d'inscription
Statut
Membre
Dernière intervention
-
TheRedXPeace -
TheRedXPeace -
Bonjour,
voila mon problème est que je veux supprimer les commentaire d'un programme java en utilisant les expressions régulières et comme j'ai pas une idée pour l'utilisation des expressions régulière j'ai tombé dans ce problème , alors si quelqu'un peut me donner un petit programme en java qui fait la suppression des commentaires (en utilisant les expression régulières bien sur ) puisque j'ai fait tout le programme sauf cette partie
et merci d'avance .
voila mon problème est que je veux supprimer les commentaire d'un programme java en utilisant les expressions régulières et comme j'ai pas une idée pour l'utilisation des expressions régulière j'ai tombé dans ce problème , alors si quelqu'un peut me donner un petit programme en java qui fait la suppression des commentaires (en utilisant les expression régulières bien sur ) puisque j'ai fait tout le programme sauf cette partie
et merci d'avance .
4 réponses
-
Je pense que si tu as fais tout le programme déjà, tu peux te débrouiller pour faire cette partie aussi.
-
mon problème est que je sais pas utiliser les expressions réguliers , ce que j'ai fait c'est tout le programme à part la partit des expressions réguliers .
-
Tu peux utiliser StringTokenizer ! Tu peux jeter un coup dans la javadoc :
http://java.sun.com/j2se/1.4.2/docs/api/java/util/StringTokenizer.html -
Tu as aussi les patterns. Par exemple :
/** src : texte à analyser */ public void analyse(String src) { Pattern p = Pattern.compile(LexicalConst.PATTERN_ATTRIBUTE + "|" + LexicalConst.PATTERN_ATTRIBUTE_VALUE + "|" + LexicalConst.PATTERN_MARKUP + "|"+ LexicalConst.PATTERN_CHEVRON ); Matcher m = null; StringTokenizer st = new StringTokenizer(src, "\n"); /* pour l'indentation */ String retour_ligne = ""; while (st.hasMoreTokens()) { m = p.matcher(st.nextToken()); while (m.find()) { String word = m.group(); if (Pattern.matches(LexicalConst.PATTERN_ATTRIBUTE,word)) { //System.out.println("WORD : " + word + " - TYPE : attribute"); } else if (Pattern.matches(LexicalConst.PATTERN_MARKUP,word)) { //System.out.println("WORD : " + word + " - TYPE : markup"); } else if (Pattern.matches(LexicalConst.PATTERN_ATTRIBUTE_VALUE,word)) { //System.out.println("WORD : " + word + " - TYPE : value"); } else if (Pattern.matches(LexicalConst.PATTERN_CHEVRON,word)) { //System.out.println("WORD : " + word + " - TYPE : value"); } } retour_ligne = "\n"; } }
iciPattern p = Pattern.compile(LexicalConst.PATTERN_ATTRIBUTE + "|" + LexicalConst.PATTERN_ATTRIBUTE_VALUE + "|" + LexicalConst.PATTERN_MARKUP + "|"+ LexicalConst.PATTERN_CHEVRON );
les constantes LexicalConst.PATTERN_ATTRIBUTE ainsi que les autres représentes la liste des expressions régulières pour analyser un texte.
Cordialement,
TheRedXPeace