IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Java Discussion :

Extraire une chaine d'un fichier txt


Sujet :

Java

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Inscrit en
    Août 2008
    Messages
    33
    Détails du profil
    Informations forums :
    Inscription : Août 2008
    Messages : 33
    Par défaut Extraire une chaine d'un fichier txt
    Bonjour à tous!

    Alors voila mon probleme,
    j'essaye d'extraire une chaîne de type "reference('uneReference')" d'un fichier txt (qui contient en fait du html...)

    uneReference est de la forme [0-9]+

    J'ai essayé de faire ça en utilisant la classe Scanner de cette maniere

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
     
     
            Pattern pattern=Pattern.compile("reference('[0-9]+')");   
            String token="";
     
            Scanner scan=new Scanner(new File(filePath));
     
            if(scan.hasNext(pattern)){
                token=scan.next(pattern);
     
                System.out.println(token);
            }
    Mais je n'arrive à rien...

    La méthode est-elle bonne ?
    Comment bien former mon pattern?

    Merci d'avance !

  2. #2
    Membre averti
    Inscrit en
    Août 2008
    Messages
    33
    Détails du profil
    Informations forums :
    Inscription : Août 2008
    Messages : 33
    Par défaut
    Bon j'ai fait ça un peut différemment, et ça a l'air de marcher
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
     
    Pattern p=Pattern.compile("monPattern");
            Matcher m=null;
            String token="";
     
            try{
                Scanner scan=new Scanner(new File("monFichier.txt"));
                scan.useDelimiter("\"");
     
                while(scan.hasNext()){
                    token=scan.next();
                    m=p.matcher(token);
     
                    if(m.matches()){
                        System.out.println(m.group(0));        
                    }                
                }
            }catch(IOException e){
                System.out.println("Fichier introuvable !");
            }
    Par contre je n'arrive pas à former mon pattern, la chaine que je veux extraire ressemble à ça :

    mot1:mot2('089374');

    (mot1 et mot2 sont fixes, seule la suite de chiffres est variable)

  3. #3
    Membre expérimenté
    Profil pro
    Inscrit en
    Janvier 2007
    Messages
    149
    Détails du profil
    Informations personnelles :
    Localisation : Canada

    Informations forums :
    Inscription : Janvier 2007
    Messages : 149
    Par défaut
    Salut, tu cherches à récupérer le chiffre c'est bien ca ?

    Essaye un truc comme ca :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
     
    Pattern p=Pattern.compile("mot1:mot2\\(\\'([0-9]+)\\'\\)");
            Matcher m=null;
            String token=null;
     
            try{
                Scanner scan=new Scanner(new File("monFichier.txt"));
                while(scan.hasNext()){
                    token=scan.next();
                    m=p.matcher(token);
     
                    while (m.find()){
                    	System.out.println(m.group(1));
                    }
                }
            }catch(IOException e){
                System.out.println("Fichier introuvable !");
            }

  4. #4
    Membre averti
    Inscrit en
    Août 2008
    Messages
    33
    Détails du profil
    Informations forums :
    Inscription : Août 2008
    Messages : 33
    Par défaut
    Merci !

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Extraire une chaine d'un fichier texte
    Par Fikou-Sama dans le forum Langage
    Réponses: 8
    Dernier message: 24/08/2009, 08h18
  2. Réponses: 2
    Dernier message: 23/04/2009, 10h24
  3. Réponses: 1
    Dernier message: 22/04/2009, 22h39
  4. Réponses: 2
    Dernier message: 11/07/2008, 10h47
  5. Extraire une chaine d'un fichier
    Par Sakapatate dans le forum SUSE
    Réponses: 1
    Dernier message: 21/05/2007, 10h47

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo