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

avec Java Discussion :

Problème avec expression régulière


Sujet :

avec Java

  1. #1
    Membre du Club
    Inscrit en
    Septembre 2006
    Messages
    66
    Détails du profil
    Informations forums :
    Inscription : Septembre 2006
    Messages : 66
    Points : 45
    Points
    45
    Par défaut Problème avec expression régulière
    Hello!

    Récupère le code source d'une page et je dois récupérer le nom d'un formulaire.



    J'essaye donc pas à pas seulement voilà même en mettant presque rien dans mon expression je ne récupère rien du tout!

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
        Pattern p = Pattern.compile("(.*)</html>");
        Matcher m = p.matcher(s);
        if (m.matches()) {
          System.out.println(m.group(1));
          System.out.println(m.group(2));
        }
    Ce bout de code est censé afficher tout le code source, sauf la dernière balise html non ? Bah déjà même ça ça ne fonctionne pas, ça n'affiche rien.

    Mais avec cette exemple ça fonctionne :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
        s = " <input type=\"hidden\" name=\"order[items][4060][5710][quantity]\" id=\"hidden_var_quantity_5710\" value=\"0\"> ";
        Pattern p = Pattern.compile(".*<input type=\"hidden\" name=\"([a-z0-9\\[\\]]*).*");
        Matcher m = p.matcher(s);
        if (m.matches()) {
          System.out.println(m.group(1));
        }
    Donc si ma variable "s" est le code html de la page entière, rien ne fonctionne. Si la variable est mon bout de code, ça fonctionne. Qu'est-ce que j'ai oublié ?

    Merci d'avance

  2. #2
    Expert éminent sénior
    Avatar de tchize_
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Avril 2007
    Messages
    25 481
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : Belgique

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2007
    Messages : 25 481
    Points : 48 806
    Points
    48 806
    Par défaut
    par défaut, le . ne matche pas les retour à la ligne. donc à moins que ton html ne fasse qu'une seule ligne, tu ne matchera pas.

    Solution:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Pattern p = Pattern.compile("(.*)</html>",Pattern.DOT_ALL|Pattern.MULTILINE);

  3. #3
    Membre du Club
    Inscrit en
    Septembre 2006
    Messages
    66
    Détails du profil
    Informations forums :
    Inscription : Septembre 2006
    Messages : 66
    Points : 45
    Points
    45
    Par défaut
    Merci ça fonctionne :-D

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

Discussions similaires

  1. Problème avec expression régulière
    Par Snote100024 dans le forum ActionScript 3
    Réponses: 2
    Dernier message: 19/04/2011, 07h48
  2. problème avec expression régulière
    Par kevins dans le forum Général Python
    Réponses: 7
    Dernier message: 21/05/2010, 12h15
  3. problème avec expressions régulières
    Par washh dans le forum Macros et VBA Excel
    Réponses: 3
    Dernier message: 22/08/2008, 18h35
  4. Problème avec expression régulière
    Par zoidy dans le forum Macros et VBA Excel
    Réponses: 12
    Dernier message: 22/08/2007, 09h43
  5. [RegEx] Problème avec expressions régulières.
    Par Cygnus Saint dans le forum Langage
    Réponses: 12
    Dernier message: 14/08/2006, 11h55

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