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

Applications et environnements graphiques Discussion :

traiter une chaine de caractères qui contient '/'


Sujet :

Applications et environnements graphiques

  1. #1
    Membre à l'essai
    Inscrit en
    Avril 2009
    Messages
    22
    Détails du profil
    Informations forums :
    Inscription : Avril 2009
    Messages : 22
    Points : 10
    Points
    10
    Par défaut traiter une chaine de caractères qui contient '/'
    Bon aprés midi tous le monde
    j'ai besoin d'un petit coup de pousse concernant le sujet ci dessous
    par exemple j'ai une chaine qui contient par exemple ceci
    11/10/12
    comment ferais je pour
    1) avoir chaque comopsant de la chaine séparement (10 et 11 et 12 séparés chacune dans une variable)
    2)puis concaténer les champs ensemble sans avoir le séparateur entre eux.

  2. #2
    Modérateur
    Avatar de N_BaH
    Profil pro
    Inscrit en
    Février 2008
    Messages
    7 578
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2008
    Messages : 7 578
    Points : 19 440
    Points
    19 440
    Par défaut
    en supposant que tu souhaites faire ça en bash, je vois au moins deux solutions :
    Code #1 : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    var="11/10/12"
    oIFS="$IFS"
    IFS='/'
    set -- $var
    echo "$2$1$3"
    IFS="$oIFS"
    Code #2 : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    var="11/10/12"
    echo "${var:3:2}${var::2}${var:6:2}"
    ...
    ?
    cf. man bash Remplacement des Paramètres
    .
    N'oubliez pas de consulter les cours shell, la FAQ, et les pages man.

  3. #3
    Modérateur
    Avatar de N_BaH
    Profil pro
    Inscrit en
    Février 2008
    Messages
    7 578
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2008
    Messages : 7 578
    Points : 19 440
    Points
    19 440
    Par défaut
    encore une:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    var="11/10/12"
    IFS='/' read m j a <<< "$var"
    echo "$j$m$a"
    .
    N'oubliez pas de consulter les cours shell, la FAQ, et les pages man.

  4. #4
    Membre éclairé Avatar de jmelyn
    Homme Profil pro
    Administrateur systèmes et réseaux
    Inscrit en
    Septembre 2007
    Messages
    703
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 60
    Localisation : France

    Informations professionnelles :
    Activité : Administrateur systèmes et réseaux

    Informations forums :
    Inscription : Septembre 2007
    Messages : 703
    Points : 823
    Points
    823
    Par défaut
    Wow, elle est belle celle-là. En une seule ligne:

    • le caractère de séparation est affecté,
    • les variables sont assignées,
    • le caractère de séparation revient comme précédemment.

    Bravo N_BaH! J'apprends tous les jours... Je la ressortirai dans un diner mondain, ça en jette
    Un problème bien posé est déjà résolu (H. Bergson).

Discussions similaires

  1. Réponses: 10
    Dernier message: 06/11/2012, 21h27
  2. Réponses: 3
    Dernier message: 22/09/2012, 13h38
  3. Réponses: 5
    Dernier message: 16/10/2010, 02h28
  4. Réponses: 6
    Dernier message: 14/12/2006, 17h27
  5. [VB.NET] une chaine de caractère qui devient une propriete
    Par lucie.houel dans le forum ASP.NET
    Réponses: 8
    Dernier message: 20/09/2005, 14h10

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