String manipulation -> char [Résolu]

Signaler
Messages postés
875
Date d'inscription
samedi 17 mai 2003
Statut
Membre
Dernière intervention
22 juin 2012
-
Messages postés
875
Date d'inscription
samedi 17 mai 2003
Statut
Membre
Dernière intervention
22 juin 2012
-
Je suis encore un newb en c# et je bloque sur un truc tout con.


En fait je voudrai faire un truc similaire au C :


string test = "yep";


test[1] = 'a';


Console.WriteLine(test); //Nous donnera yap


Si vous pouvez m'aider ... mci

Have Fun ...

21 réponses

Messages postés
3466
Date d'inscription
lundi 16 octobre 2000
Statut
Modérateur
Dernière intervention
30 octobre 2008
47
Y'a peut-etre une méthode plus simple, mais sinon, je te dirais :



-convertir ta string en char[]

- changer le char voulu

- recreer une instance de ta string avec la valeur de ton char[]



string test = "yep";

char[] chars = test.ToCharArray();

chars[1] = 'a';

test = new string(chars);



Je pense qu'il doit y avoir une méthode plus performante.



Mx
Messages postés
1182
Date d'inscription
mercredi 21 janvier 2004
Statut
Membre
Dernière intervention
6 septembre 2011
13
sinon utilise la methode String.replace('e', 'a');


Arthenius

"Il n'y a pas de mauvais développeurs,...
mais uniquement de mauvais utilisateurs..."
Messages postés
6351
Date d'inscription
samedi 1 juin 2002
Statut
Modérateur
Dernière intervention
2 août 2014
86
string est "immuable".
Contrairement au C/C++(...), on ne peut l'utiliser comme un tableau de caractères qu'un "lecture", pas en "écriture".
Voir la section Notes de la doc de la classe String.

Cocoricoooooooo !!!!
coq
MVP Visual C#
Messages postés
875
Date d'inscription
samedi 17 mai 2003
Statut
Membre
Dernière intervention
22 juin 2012

Ouai le coq c'est ce que j'avais vu !!! Bah ça arange pas bcp !!!

Sinon kel rapidité de réponse !!! Enfin MorpionMx je test d que possible, ms la je suis sous Linux mrd :(

Have Fun ...
Messages postés
3466
Date d'inscription
lundi 16 octobre 2000
Statut
Modérateur
Dernière intervention
30 octobre 2008
47
Le string.Replace est ok pour remplacer tous les 'e' par un 'a', mais
s'il veut modifer qu'un caractère (pour une autre chaine que le "yep")
ca va devenir plus contraignant
Messages postés
1182
Date d'inscription
mercredi 21 janvier 2004
Statut
Membre
Dernière intervention
6 septembre 2011
13
certe mais vue qu'il est newb ca peut peut etre lui servir...qd meme
:o)))
chais pas en combinant ca avec un indexof et autre joyeusetes y a peut etre moyen de faire une usine qui ne remplace que le caractere qui va bien :o))))


Arthenius

"Il n'y a pas de mauvais développeurs,...
mais uniquement de mauvais utilisateurs..."
Messages postés
6351
Date d'inscription
samedi 1 juin 2002
Statut
Modérateur
Dernière intervention
2 août 2014
86
Utilise plutôt le StringBuilder, côté perfs ce sera mieux :-)

Cocoricoooooooo !!!!
coq
MVP Visual C#
Messages postés
875
Date d'inscription
samedi 17 mai 2003
Statut
Membre
Dernière intervention
22 juin 2012

Nah le string.replace ne va pas me servir, néenmoins j'avoue que ça me servira pi etre un jour!!


Sinon merci pour tous cette aide !

Have Fun ...
Messages postés
3466
Date d'inscription
lundi 16 octobre 2000
Statut
Modérateur
Dernière intervention
30 octobre 2008
47
N'oublies pas de valider les bonnes réponses, pour aider les prochaines personnes qui auront ce type de question
Messages postés
875
Date d'inscription
samedi 17 mai 2003
Statut
Membre
Dernière intervention
22 juin 2012

En fait vous savez koi g utilisé le String.Replace('I','O'); car en fait j'aivais juste besoin de changer un PING :bah en PONG:bah ,et si le bah est modifier ça n'a pas d'importance ....

Have Fun ...
Messages postés
1182
Date d'inscription
mercredi 21 janvier 2004
Statut
Membre
Dernière intervention
6 septembre 2011
13
Arf alors MX ;o))))
g bien fait..

:o)))))))

valide les bonnes rep stp :o)))
@+


Arthenius

"Il n'y a pas de mauvais développeurs,...
mais uniquement de mauvais utilisateurs..."
Messages postés
3466
Date d'inscription
lundi 16 octobre 2000
Statut
Modérateur
Dernière intervention
30 octobre 2008
47
Ouai, t'as bien fait.



Bon au moins ca l'aura prévenu que ca remplaçait toutes les occurences du caractère... Au cas ou



Mx
Messages postés
875
Date d'inscription
samedi 17 mai 2003
Statut
Membre
Dernière intervention
22 juin 2012

Nah MX ne tkt pas, je c ce que je fé !! 9a n'a aucune importance dans ce que je ve faire !

Ms par contre c'est obligé qu'un jour je me serve de ce que tu m'as montré.



LOL sinon on dirai que c la gueure entre les helper !! au premier ki
répond, lol, c'est marant dailleur au niveaux rapidité, vous êtes très
fort !


Have Fun ...
Messages postés
6351
Date d'inscription
samedi 1 juin 2002
Statut
Modérateur
Dernière intervention
2 août 2014
86
Meuh non y'a pas de guerre lol

Cocoricoooooooo !!!!
coq
MVP Visual C#
Messages postés
3466
Date d'inscription
lundi 16 octobre 2000
Statut
Modérateur
Dernière intervention
30 octobre 2008
47
Au contraire, c'est mieux d'avoir plusieurs possibilités

Et chacune d'elle se justifie

Mx
Messages postés
1182
Date d'inscription
mercredi 21 janvier 2004
Statut
Membre
Dernière intervention
6 septembre 2011
13
yop...
pas de guerre...

faite du code pas la guerre...


Arthenius

"Il n'y a pas de mauvais développeurs,...
mais uniquement de mauvais utilisateurs..."
Messages postés
875
Date d'inscription
samedi 17 mai 2003
Statut
Membre
Dernière intervention
22 juin 2012

LOL no war !!!

Have Fun ...
Messages postés
875
Date d'inscription
samedi 17 mai 2003
Statut
Membre
Dernière intervention
22 juin 2012

RE
j'ai encore un probleme j'ai modifier un chaîne de caractaire avec la technique à MX. Ce que je voudrai faire c réduire la taille de cette chîne et la sauvegarder dans un string.

char[] = "yoplolhip";
je voudrai que la partie yop !
Comment faire ???

Have Fun ...
Messages postés
1182
Date d'inscription
mercredi 21 janvier 2004
Statut
Membre
Dernière intervention
6 septembre 2011
13
string test = "yoplolhip";


MessageBox.Show( test.Substring(0,3));


Arthenius

"Il n'y a pas de mauvais développeurs,...
mais uniquement de mauvais utilisateurs..."
Messages postés
3466
Date d'inscription
lundi 16 octobre 2000
Statut
Modérateur
Dernière intervention
30 octobre 2008
47
A partir d'une string, tu as la méthode Substring();



Exemple :



string a = "yopaaaaa";

string b aaa.Substring(0, 3);> b = "yop";


Mx