Précédent   Forum du club des développeurs et IT Pro > Dotnet > Général Dotnet > Débuter
Débuter Forum d'entraide pour bien débuter avec Dotnet
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse
 
Outils de la discussion
Publicité
'
Vieux 22/02/2013, 21h40   #1
RobinSoft
Invité de passage
 
Homme Robin
Amateur
Inscription : février 2013
Messages : 1
Détails du profil
Informations personnelles :
Nom : Homme Robin
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
RobinSoft est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 22/02/2013, 22h19   #2
infosam76
Membre Expert
 
Homme Eric Metz
Développeur informatique
Inscription : avril 2006
Messages : 515
Détails du profil
Informations personnelles :
Nom : Homme Eric Metz
Âge : 36
Localisation : Belgique

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

Informations forums :
Inscription : avril 2006
Messages : 515
Points : 1 601
Points : 1 601
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é ? utiliser le bouton

Votre problème est résolu ? utiliser le bouton
infosam76 est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse
Outils de la discussion

Navigation rapide


Fuseau horaire GMT +2. Il est actuellement 20h51.


 
 
 
 
Partenaires

Hébergement Web