chaîne remplacer en c #

Dupliquer possible:
Chaîne remplacer ne fonctionne pas

J’ai un remue-ménage comme:

ssortingng url = "abc=$abc"; url.Replace("$abc", "123"); 

Ensuite, ce à quoi je m’attendais url = “abc = 123”. Mais en réalité, après avoir exécuté plus de code, le résultat est toujours “abc = $ abc”, pas “abc = 123”.

Comment résoudre ce problème?

Tu veux

 url = url.Replace("$abc", "123"); 

Replace() renvoie une nouvelle instance de chaîne avec l’opération de remplacement effectuée. Cela (et toutes les autres opérations sur les chaînes) ne modifie pas l’instance de chaîne d’origine.

Les chaînes sont immuables, cela signifie que vous créez une nouvelle chaîne au lieu de modifier l’original:

 url = url.Replace("$abc", "123"); 

Les chaînes sont immuables, ce qui signifie qu’elles ne changeront pas à la place. Essayez d’assigner le résultat de replace à une autre variable de chaîne.

 ssortingng url = "abc=$abc"; ssortingng newUrl = url.Replace("$abc", "123"); 

essayer

 url = url.Replace("$abc", "123"); 

Ssortingng.Replace, méthode

Renvoie une nouvelle chaîne dans laquelle toutes les occurrences d’un caractère Unicode ou d’une chaîne spécifié dans la chaîne en cours sont remplacées par un autre caractère ou chaîne Unicode spécifié.

Vous devez définir la chaîne d’origine, ou une nouvelle chaîne, égale à la valeur renvoyée par Ssortingng.Replace. En utilisant votre exemple, procédez comme suit:

 ssortingng url = "abc=$abc"; url = url.Replace("$abc", "123"); 
 url = url.Replace("$abc", "123"); 

.Replace renvoie une chaîne NEW. Vous devez la ré-affecter à la chaîne d’origine si vous souhaitez la modifier.

url = url.Replace (“$ abc”, “123”);

Remplacer renvoie une chaîne. Vous devez donc modifier votre deuxième déclaration en:

 url = url.Replace("$abc", "123");