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

Collection et Stream Java Discussion :

[Regexp] Quantificateur réticent (reluctant)


Sujet :

Collection et Stream Java

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre émérite
    Avatar de thecaptain
    Homme Profil pro
    Architecte de système d'information
    Inscrit en
    Décembre 2003
    Messages
    919
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Suisse

    Informations professionnelles :
    Activité : Architecte de système d'information

    Informations forums :
    Inscription : Décembre 2003
    Messages : 919
    Par défaut [Regexp] Quantificateur réticent (reluctant)
    Salut à tous

    J'essaie d'éradiquer les commentaires d'une classe via une expression régulière que je monte comme ceci :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    maString.replaceAll("(?s)(/\\*)(.*)(\\*/)", "test");
    Cela marche très bien sauf qu'il n'effectue pas la recherche dans le bon sens. Je m'explique : voici un bête fichier que j'essaie de parser :
    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
    /*
     * Header comment
     */
     
    package test;
     
    /**
     * Class comment
     */
    public class Test
    {
       /**
        * Method comment.
        */
       public void maMethod() { }
    }
    Lorsque je lance ma régex la-dessus, cela me sort :
    test
    public void maMethod() { }
    }
    Donc la régex marche bien puisqu'il a bien viré tout ce qu'il trouve entre /* */ MAIS il fait la recherche du */ depuis le bas alors que j'aimerais qu'il le fasse depuis le haut... J'ai donc consulté ce tuto ou je vois que les quantificateurs dit réticents semblent être la solution, mais je vois pas comment les utiliser ici. Une piste ?

    Merci d'avance !

    @++

  2. #2
    Membre émérite
    Avatar de thecaptain
    Homme Profil pro
    Architecte de système d'information
    Inscrit en
    Décembre 2003
    Messages
    919
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Suisse

    Informations professionnelles :
    Activité : Architecte de système d'information

    Informations forums :
    Inscription : Décembre 2003
    Messages : 919
    Par défaut
    Re,

    Décidément ça m'apprendra à chercher J'ai trouvé la solution ici en faisant simplement ça ca marche :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    maString.replaceAll("(?s)(/\\*)(.*?)(\\*/)", "test");
    @++

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

Discussions similaires

  1. [RegExp] Quantificateur inattendu
    Par pc.bertineau dans le forum Général JavaScript
    Réponses: 4
    Dernier message: 16/07/2007, 16h57
  2. [langage] [RegExp] Détecter un chemin Windows
    Par GLDavid dans le forum Langage
    Réponses: 3
    Dernier message: 01/09/2004, 14h57
  3. [langage] [RegExp] Récupérer une portion de phrase
    Par GLDavid dans le forum Langage
    Réponses: 4
    Dernier message: 27/08/2004, 22h01
  4. [langage] [RegExp] Question d'expression régulière
    Par cloogy dans le forum Langage
    Réponses: 5
    Dernier message: 08/10/2003, 09h29
  5. regexp
    Par mathieu gérard dans le forum ASP
    Réponses: 4
    Dernier message: 02/10/2003, 18h05

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