2010-11-02 13 views
1

Je souhaite remplacer des caractères String spécifiques en fonction de la valeur de nombre entier transmise dynamiquement à son index.Comment remplacer les caractères String en C#

Malheureusement, String.Replace() attend la valeur String comme arguments. Alors, pourriez-vous me dire comment puis-je rendre mon exigence possible?

+8

Exemple d'entrée (s) et de sortie (s) s'il vous plaît. –

+0

Plus de détails nécessaires. –

+0

Chaîne s = "abc"; s = s.replace (1,2); Je voudrais passer la valeur entière au lieu de la valeur de chaîne dans la méthode de remplacement. Si ce n'est pas possible, puis-je le faire? – Dusk

Répondre

3

Il est généralement mieux à l'évolution des chaînes d'utiliser un StringBuilder. Il a une méthode StringBuilder.Replace qui peut remplacer les caractères.

4

Les chaînes sont immuables; de changer un caractère individuel, vous pouvez utiliser:

char[] chars = oldString.ToCharArray(); 
chars[index] = newChar; 
string newString = new string(chars); 
1

Si vous allez remplacer beaucoup de mots dans la chaîne, il est toujours préférable d'utiliser stringBuilder. La chaîne est plus lente comparée à StringBuilder. Pour revenir sur les limitations dans le type de données String, stringbuilder a été introduit.

Questions connexes