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

Shell et commandes GNU Discussion :

Remplacer expression avec condition


Sujet :

Shell et commandes GNU

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éclairé
    Inscrit en
    Décembre 2010
    Messages
    258
    Détails du profil
    Informations forums :
    Inscription : Décembre 2010
    Messages : 258
    Par défaut Remplacer expression avec condition
    Bonjour à tous,

    Surement quelque chose de tout simple mais je sèche...
    J'aimerais remplacer toutes les occurrences de "..." si le caractère d'après est une lettre ou un chiffre.

    Ce qui ferait en entrée:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Voici un exemple...Ça donnerait ceci... Oui ceci...00122........etc
    Et en sortie :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Voici un exemple... Ça donnerait ceci... Oui ceci... 00122........ etc
    Merci pour votre aide

  2. #2
    Expert confirmé

    Profil pro
    Inscrit en
    Janvier 2011
    Messages
    1 946
    Détails du profil
    Informations personnelles :
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations forums :
    Inscription : Janvier 2011
    Messages : 1 946
    Par défaut
    Salut,

    Un truc du genre :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    $ echo ${var}
    Voici un exemple...,...Ça donnerait ceci... Oui ceci...00122........etc
     
    $ echo ${var} | sed 's/\(\.\)\b\([[:alnum:]]\+\)/\1 \2/g'
    Voici un exemple...,... Ça donnerait ceci... Oui ceci... 00122........ etc

  3. #3
    Membre éclairé
    Inscrit en
    Décembre 2010
    Messages
    258
    Détails du profil
    Informations forums :
    Inscription : Décembre 2010
    Messages : 258
    Par défaut
    Merci mais si je comprend bien la commande correspond uniquement à la chaîne ".".
    Hors si j'ai ça en entrée :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Voici un exemple...,...Ça donnerait ceci... Oui ceci...00122........etc.Rsdf
    Il va mettre un espace avant "Rsdf" et je veux vraiment que ça soit uniquement pour "..."

  4. #4
    Expert confirmé

    Profil pro
    Inscrit en
    Janvier 2011
    Messages
    1 946
    Détails du profil
    Informations personnelles :
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations forums :
    Inscription : Janvier 2011
    Messages : 1 946
    Par défaut
    Oups... effectivement

    Essaie ça :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    sed 's/\(\.\{2,\}\)\b\([[:alnum:]]\+\)/\1 \2/g'

  5. #5
    Membre éclairé
    Inscrit en
    Décembre 2010
    Messages
    258
    Détails du profil
    Informations forums :
    Inscription : Décembre 2010
    Messages : 258
    Par défaut
    Y'a plus l'espace devant le c cédille

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    bash-3.2$ echo ${var}
    Voici un exemple...,...Ça donnerait ceci... Oui ceci...00122........etc.Rsdf
    bash-3.2$ echo ${var} | sed 's/\(\.\{2,\}\)\b\([[:alnum:]]\+\)/\1 \2/g'
    Voici un exemple...,...Ça donnerait ceci... Oui ceci... 00122........ etc.Rsdf

  6. #6
    Expert confirmé

    Profil pro
    Inscrit en
    Janvier 2011
    Messages
    1 946
    Détails du profil
    Informations personnelles :
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations forums :
    Inscription : Janvier 2011
    Messages : 1 946
    Par défaut
    Euh... chez moi si

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    $ echo ${var}
    Voici un exemple...,...Ça donnerait ceci... Oui ceci...00122........etc.Rsdf
     
    $ echo ${var} | sed 's/\(\.\{2,\}\)\b\([[:alnum:]]\+\)/\1 \2/g'
    Voici un exemple...,... Ça donnerait ceci... Oui ceci... 00122........ etc.Rsdf

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

Discussions similaires

  1. [2008R2] IIF avec expression de condition = Membre de dimension
    Par VITALTH dans le forum SSAS
    Réponses: 1
    Dernier message: 06/05/2014, 09h44
  2. Remplacement valeur avec condition SI
    Par dvdhag123 dans le forum Macros et VBA Excel
    Réponses: 3
    Dernier message: 30/10/2013, 09h39
  3. Remplacer chaine avec exception (expression régulière)
    Par toss.net dans le forum EDI, CMS, Outils, Scripts et API
    Réponses: 1
    Dernier message: 14/01/2012, 01h07
  4. remplacer 5 derniers chiffres avec condition
    Par jph86 dans le forum Access
    Réponses: 4
    Dernier message: 27/12/2009, 19h19
  5. [RegEx] Remplacer une expression avec un nombre ou nom
    Par gandolfi dans le forum Langage
    Réponses: 4
    Dernier message: 16/11/2008, 21h48

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