+ Répondre à la discussion
Affichage des résultats 1 à 2 sur 2
  1. #1
    Invité de passage
    Homme Profil pro
    Amateur
    Inscrit en
    février 2013
    Messages
    1
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Amateur

    Informations forums :
    Inscription : février 2013
    Messages : 1
    Points : 0
    Points
    0

    Par défaut Remplacer une chaîne par une autre, une seule fois

    Bonsoir à tous !

    C'est en postant sur développez que j'espère trouver la réponse à ma question, qui je dois l'avouer, me bloque quelques peu dans mes petits projets perso !

    Je souhaiterai pouvoir remplacer une chaîne de caractère dans une textbox par exemple. Mais UNE SEULE fois, comme ce que l'on peut faire avec la fonction du logiciel notepad++ par exemple.

    En gros

    Code :
    Replace(TextBox1.Text, 1200, 1500) 'remplace dans la textbox les 1200 par les 1500
    Ok ça, ça fonctionne bien. Mais cela me remplace tous les 1200 d'un seul coup or je souhaiterai que cela ne se fasse qu'une seule fois pour le premier 1200, puis après pour le deuxième puis le troisième...
    Exemple :

    Code :
    1
    2
    5265 4649 64642 1500 464464 dadsad 64956 dad 1200 464
    41654 adz 1200 dasw
    Code :
    1
    2
    5265 4649 64642 1500 464464 dadsad 64956 dad 1500 464
    41654 adz 1200 dasw
    Code :
    1
    2
    5265 4649 64642 1500 464464 dadsad 64956 dad 1500 464
    41654 adz  1500 dasw
    remplacer le premier 1200 puis le deuxième plus loin, puis le troisième à la deuxième ligne ... (en appuyant 3 fois sur un bouton par exemple) . Mais pas les 3 en un coup. Le résultat reviens au même, mais je voudrai pouvoir remplacer une seule chaîne par une seule chaîne (répéter 3 fois l'action pour arriver au remplacement des trois 1200)

    J'espère que vous m'avez compris, en espérant avoir une réponse.

    Merci d'avance !

    Robin

  2. #2
    Expert Confirmé


    Homme Profil pro
    Développeur informatique
    Inscrit en
    avril 2006
    Messages
    924
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : Belgique

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Santé

    Informations forums :
    Inscription : avril 2006
    Messages : 924
    Points : 3 246
    Points
    3 246

    Par défaut

    Intéressante comme petite question. J'ai pas trouvé plus court :

    Code :
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
     
    string strFind = "1200";
                string test = "5265 1200 64642 1200 464464 dadsad 64956 dad 1200 464 41654 adz 1200 dasw";
     
                int nPos = test.IndexOf(strFind);
     
                if(nPos != -1)
                {
                    // Récupère la chaine jusqu'à l'occurence de la 1ère string à remplacer
                    string StartString = test.Substring(0, nPos + strFind.Length);
     
                    // Récupère la fin de la string
                    string EndString = test.Substring(nPos + strFind.Length);
     
                    // Effectue le remplacement + rajoute la fin de la chaine
                    test = StartString.Replace(strFind, "1500") + EndString;
                }
    Articles sur les technologies .NET

    Une réponse vous a aidé ? utilisez le bouton

    Votre problème est résolu ? utilisez le bouton

Liens sociaux

Règles de messages

  • Vous ne pouvez pas créer de nouvelles discussions
  • Vous ne pouvez pas envoyer des réponses
  • Vous ne pouvez pas envoyer des pièces jointes
  • Vous ne pouvez pas modifier vos messages
  •