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

Langage Java Discussion :

Expression régulières : remplacer les zones de commentaires par des blancs


Sujet :

Langage Java

  1. #1
    Membre du Club
    Étudiant
    Inscrit en
    Juin 2004
    Messages
    72
    Détails du profil
    Informations personnelles :
    Âge : 40

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Juin 2004
    Messages : 72
    Points : 55
    Points
    55
    Par défaut Expression régulières : remplacer les zones de commentaires par des blancs
    Bonjours,

    J'essaye depuis un petit bout de temps de remplacer les zones de commentaires du type : /* */ par des ' '.

    Dans le contexte, un fichier est chargé dans un String,
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    leFichier.replaceAll("(/\\*)-(.*)-(\\*/)", " ");
    Le problème c'est qu'il remplace effectivement un pattern semblable à celui que je souhaite à la différence près qu'il ne s'arrête pas au */ suivant.

    En gros, extrait du fichier :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    salut super chouette /* un premier commentaire */ c'est vraiment tops cool /* deuxième commentaire */ j'ai un pêche d'enfer
    Après traitement

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    salut super chouette j'ai un pêche d'enfer
    Alors que souhaiterais :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    salut super chouette c'est vraiment tops cool j'ai un pêche d'enfer
    Je cherche donc ce fameux pattern qui commence à me rendre dingue.

    Merci,

  2. #2
    Expert confirmé
    Avatar de le y@m's
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Février 2005
    Messages
    2 636
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Février 2005
    Messages : 2 636
    Points : 5 778
    Points
    5 778
    Par défaut
    Tu dois spécifier de prendre la partie la "plus courte" en rajoutant un '?' derrière le ".*"
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    leFichier.replaceAll("(/\\*)-(.*?)-(\\*/)", " ");

  3. #3
    Membre du Club
    Étudiant
    Inscrit en
    Juin 2004
    Messages
    72
    Détails du profil
    Informations personnelles :
    Âge : 40

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Juin 2004
    Messages : 72
    Points : 55
    Points
    55
    Par défaut
    Merci,
    mais
    c'est spé, ça marche pour les zones de type :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    /*------------------------------------------------------------------------
        BLA ET BLA ET BLA ET BLA ET BLA ET BLA ET BLA ET BLA ET BLA ET BLA
      ----------------------------------------------------------------------*/
    Mais pas pour les types suivant :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    /*    BLA ET BLA ET BLA ET BLA ET BLA ET BLA ET      */
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    /* ***************************  BLA ET    ************************** */

  4. #4
    Expert confirmé
    Avatar de le y@m's
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Février 2005
    Messages
    2 636
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Février 2005
    Messages : 2 636
    Points : 5 778
    Points
    5 778
    Par défaut
    Il doit s'agir des '-' dans ton expression régulière (je pensais que tu les avais mis là exprès).
    Il te suffit donc de les lever.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    leFichier.replaceAll("/\\*.*?\\*/", " ");

  5. #5
    Membre du Club
    Étudiant
    Inscrit en
    Juin 2004
    Messages
    72
    Détails du profil
    Informations personnelles :
    Âge : 40

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Juin 2004
    Messages : 72
    Points : 55
    Points
    55
    Par défaut
    Merci pour tous, les - s'était pour l'union, inutile apparement ...


    Encore Merci

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

Discussions similaires

  1. Réponses: 0
    Dernier message: 24/11/2009, 10h20
  2. Remplacer les liens dans Formview par des boutons
    Par lemagicien dans le forum ASP.NET
    Réponses: 1
    Dernier message: 29/08/2007, 23h33
  3. Réponses: 3
    Dernier message: 12/09/2006, 13h53
  4. [String][replaceAll][Expression régulière]Remplacement multi
    Par cpr0 dans le forum Collection et Stream
    Réponses: 9
    Dernier message: 09/04/2004, 17h40

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