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

C++Builder Discussion :

decouper une chaine de caractère ?


Sujet :

C++Builder

  1. #1
    Nouveau membre du Club
    Inscrit en
    Janvier 2008
    Messages
    4
    Détails du profil
    Informations forums :
    Inscription : Janvier 2008
    Messages : 4
    Par défaut decouper une chaine de caractère ?
    voici la chaine de caractère dans un Edit:

    # NOM * MATRICULE * NOTE #

    comment faire en sorte que quand je clique sur un bouton le NOM, le MATRICULE et la NOTE s'affiche dans 3 Edit different.

    NB: le NOM, le MATRICULE et la NOTE sont des entité qui change d'un individu à l'autre et les signes # et * sont des separateurs

    merci d'avance!

  2. #2
    Expert confirmé

    Avatar de pottiez
    Homme Profil pro
    Développeur C++
    Inscrit en
    Novembre 2005
    Messages
    7 152
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Développeur C++
    Secteur : Industrie

    Informations forums :
    Inscription : Novembre 2005
    Messages : 7 152
    Par défaut
    Salut,
    il faut que tu récupère le texte de ton edit dans une variable de type AnsiString et que tu joue avec les fonction Pos et SubString de l'AnsiString.

    Tu peut regarder dans l'aide pour plus d'infos

  3. #3
    Membre Expert

    Profil pro
    Inscrit en
    Juin 2002
    Messages
    1 407
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2002
    Messages : 1 407
    Par défaut
    Salut !

    Juste pour montrer comment mettre tout ceci en place, je vais travailler sur la chaîne :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    Edit1->Text = "blabla # NOM * MATRICULE * NOTE # blabla"
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
     
    AnsiString N;
    int s;
    N = Edit1->Text;
    s = N.Pos("#");
    if(s != 0)
        {
        // au cas où, on tronque pour commencer après le premier délimiteur
        N = N.SubString(s+1, N.Length());
        //on cherche le délimiteur du Nom
        s = N.Pos("*");
        if(s != 0)
            {
            // donc ici on a le Nom
            EditNom->Text = N.SubString(1, s-1).Trim();
            // On tronque pour continuer après le délimiteur du nom
            N = N.SubString(s+1, N.Length());
            // On cherche le délimiteur du Matricule
            s = N.Pos("*");
            if(s != 0)
                {
                // donc ici on a le Matricule
                EditMatricule->Text = N.SubString(1, s-1).Trim();
                N = N.SubString(s+1, N.Length());
                s = N.Pos("#");
                if(s != 0)
                    {
                    EditNote->Text = N.SubString(1, s-1).Trim();
                    }
                }
            }
        }
    EditNom, EditMatricule et EditNote sont des TEdit que j'ai renommé ainsi pour avoir une meilleure vision de ce que je fais.
    Voir l'aide pour AnsiString::Trim().

    A plus !

Discussions similaires

  1. Réponses: 7
    Dernier message: 28/11/2010, 02h53
  2. Réponses: 11
    Dernier message: 10/02/2009, 09h31
  3. decouper une chaine de caractère
    Par vileb29 dans le forum Langage
    Réponses: 6
    Dernier message: 30/08/2007, 13h50
  4. decouper une chaine de caractères
    Par MATH_03 dans le forum Access
    Réponses: 3
    Dernier message: 14/12/2006, 01h11
  5. [Tableaux] decouper une chaine de caractères
    Par pekka77 dans le forum Langage
    Réponses: 12
    Dernier message: 03/12/2005, 19h08

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