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 Perl Discussion :

[regexp] chaine la plus courte


Sujet :

Langage Perl

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Avril 2004
    Messages
    18
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2004
    Messages : 18
    Par défaut [regexp] chaine la plus courte
    bonjour,
    je voudrais "matcher" la plus courte expression entre deux virgules dans une succession de terme entre virgules :

    j'ai blabla, blabla1, blabla 2, blaburps bla, ... etc

    et je voudrais seulement le contenu entre les virgules qui contiennent burps (pour les supprimer)

    je me doute que l'opérateur paresseux ? doit entrer en jeux mais je le matche pour la virgule apres mais pas celle juste avant.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
        $varible =~ s/\,(.*?)\bburps\b(.*?),/,/ig;
    une recherche m'a permi de trouver la solution mais uniquemment en php (modificateur /U apparemment j'ai pas testé )

    Merci de votre aide

  2. #2
    Expert confirmé
    Avatar de Jedai
    Homme Profil pro
    Enseignant
    Inscrit en
    Avril 2003
    Messages
    6 245
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Côte d'Or (Bourgogne)

    Informations professionnelles :
    Activité : Enseignant

    Informations forums :
    Inscription : Avril 2003
    Messages : 6 245
    Par défaut
    Parfois le "tout regexp" n'est pas la solution la plus naturelle, par exemple ici :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    my $text;
    $text = join ',', grep {not m/\b burps \b/ix} (split m/,/, $text);
    Est plus simple conceptuellement.

    Sinon avec une regexp :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    s/, [^,]* \b burps \b [^,]* ,/,/igx
    --
    Jedaï

  3. #3
    Membre averti
    Profil pro
    Inscrit en
    Avril 2004
    Messages
    18
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2004
    Messages : 18
    Par défaut
    Merci !!
    pour le split j'y avait pensé mais ca ne m'arrangeait pas pour la suite du traitement...
    je vais tester ca tout de suite
    Merci encore pour la rapidité

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

Discussions similaires

  1. Calcul de plus court chemin dans un graphe
    Par Elmilouse dans le forum Prolog
    Réponses: 6
    Dernier message: 21/03/2010, 20h26
  2. néophyte, faire une requête plus courte
    Par LE NEINDRE dans le forum Requêtes
    Réponses: 8
    Dernier message: 10/10/2005, 09h44
  3. algorithme de Ford (recherche chemin le plus court)
    Par abstraite dans le forum Algorithmes et structures de données
    Réponses: 2
    Dernier message: 19/05/2005, 10h39
  4. [LG]Type chaine avec plus de 255 car et EOF intempestif.
    Par jpclabaux dans le forum Langage
    Réponses: 2
    Dernier message: 27/10/2004, 10h39
  5. Réponses: 2
    Dernier message: 21/03/2004, 18h57

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