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

Linux Discussion :

[sed] remplacer une chaine tout en gardant une partie de celle ci


Sujet :

Linux

  1. #1
    Nouveau membre du Club
    Inscrit en
    Mai 2007
    Messages
    39
    Détails du profil
    Informations forums :
    Inscription : Mai 2007
    Messages : 39
    Points : 36
    Points
    36
    Par défaut [sed] remplacer une chaine tout en gardant une partie de celle ci
    bonjour,

    j'aimerais changer une chaine de caractere je me suis lancer sur la commande sed pour obtenir le résultat que je veux je vous explique.

    j'ai un fichier qui contient plusieurs fois:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    fct.possedeOption('0123456789')
    cette chaine de caractère n'est pas forcément en début de ligne et peut être plusieurs fois à la suite comme ici (c'est une partie de requête sql):
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    'fct.possedeOption('0123456789') or fct.possedeOption('1234567890') or fct.possedeOption('234567890')'
    et j'aimerais obtenir:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    fct.possedeOption(''0123456789'')
    Donc comme on peut le voir je voudrais pouvoir ajouter une quote ( ' ) de chaque côté de ma valeur sans la modifier sachant qu'elle est toujours de 10 caractères.

    j'arrive à changer les ' en '' mais pour tout ceux du fichier:
    alors je recherche à mixer avec:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    sed "s/fct.possedeOption\(\'*\'\)/fct.possedeOption\(\'\'*\'\'\)/g"
    sed "s#fct.possedeOption('*')#fct.possedeOption(''*'')#g"
    mais je n'y arrive pas.

    si quelqu'un aurait une solution merci d'avance.

  2. #2
    Expert éminent
    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
    Points : 8 586
    Points
    8 586
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    perl -pe "s/fct\.possedeOption\('(\w{10})'\)/fct.possedeOption(''\$1'')/g"
    --
    Jedaï

  3. #3
    Nouveau membre du Club
    Inscrit en
    Mai 2007
    Messages
    39
    Détails du profil
    Informations forums :
    Inscription : Mai 2007
    Messages : 39
    Points : 36
    Points
    36
    Par défaut Merci
    Merci pour l'aide

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

Discussions similaires

  1. Remplacer une chaine de car par une autre ds 1 ligne
    Par jayan dans le forum VBScript
    Réponses: 1
    Dernier message: 07/05/2008, 10h24
  2. Réponses: 2
    Dernier message: 12/03/2008, 13h44
  3. Réponses: 9
    Dernier message: 31/07/2007, 01h13
  4. JSP : comment remplacer une chaine de caractères par une autre
    Par techquos dans le forum Servlets/JSP
    Réponses: 2
    Dernier message: 14/12/2006, 09h37
  5. Réponses: 4
    Dernier message: 16/04/2004, 16h31

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