Expression régulière [Résolu]

Messages postés
14
Date d'inscription
mercredi 22 janvier 2003
Statut
Membre
Dernière intervention
13 novembre 2006
- - Dernière réponse : cs_Ayato
Messages postés
14
Date d'inscription
mercredi 22 janvier 2003
Statut
Membre
Dernière intervention
13 novembre 2006
- 13 nov. 2006 à 17:00
Bonjour, a tous…





Je vient de débuté en JAVA, et on ma demander d’écrire un morceau
de code qui doit notamment utiliser les expressions régulières, mais celle-ci
me pose pas mal de problème. 


En effet mes expressions régulières ne marche pas, alors que
je les ai test sur différent site de test prévu à cet effet et que je ai suivie
scrupuleusement les instructions des sites d’apprentissage de JAVA.


<hr size="2" width="100%" />
Voici le morceau code que je test (reprise du site : www.laltruiste.com) :




      public static void main(java.lang.String[] args) {
            System.out.println("+------------------------------------+");
            System.out.println("|   Bienvenue dans mon Programme     |");
            System.out.println("+------------------------------------+\n");
           
            Pattern modele = Pattern.compile("tr",Pattern.CASE_INSENSITIVE);
            Matcher recherche = modele.matcher("tr[1]");
            recherche(recherche);

           
            Demmarrage.ExcecuteURL();
      }
   
        public static void recherche(Matcher recherche) {
            String regexp = recherche.pattern().pattern();
            if(recherche.matches()){
                System.out.println("Une occurrence a été trouvée entre "
                                 + recherche.regionStart()
                                 + " et "
                                 + recherche.regionEnd());
               
                String chaine = recherche.group();
                int debut = recherche.start();
                int fin = recherche.end();

                System.out.println("Modèle     : " + regexp);
                System.out.println("Occurrence : " + chaine);
                System.out.println("Début      : " + debut);
                System.out.println("Fin        : " + fin + "\n");
            }
            else {
                System.out.println("Aucune correspondance n'a pu être "
                                 + "trouvée pour l'expression "
                                 + regexp + "\n");
            }
        }






<hr size="2" width="100%" />
A l’exécution de mon appli voici ce que me donne la console :







+------------------------------------+
|   Bienvenue dans mon Programme     |
+------------------------------------+

Aucune correspondance n'a pu être trouvée pour l'expression tr




<hr size="2" width="100%" />
Merci
Afficher la suite 

Votre réponse

2 réponses

Meilleure réponse
Messages postés
162
Date d'inscription
mardi 26 avril 2005
Statut
Membre
Dernière intervention
6 novembre 2008
5
3
Merci
slt,
  Utilise plutot la method recherche.find() au lieu de recherche.matches()
allez bon courage

Dire « Merci » 3

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

Codes Sources 109 internautes nous ont dit merci ce mois-ci

Commenter la réponse de mouzart
Messages postés
14
Date d'inscription
mercredi 22 janvier 2003
Statut
Membre
Dernière intervention
13 novembre 2006
0
Merci
Oui effectivement tu as raison, honte sur moi !!!!


 


 Le problème venait de
la méthode  « .matches() » car
celle-ci s'appliquer à la chaîne de caractères entière, au contraire des
méthodes « .find() ».


 


La prochaine fois je tacherais de liée les caractéristique des
fonctions qui sont utilisée dans les exemples.


 


Merci.
Commenter la réponse de cs_Ayato

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.