Maison > développement back-end > C++ > Pourquoi «String.replace» ne modifie-t-il pas la chaîne d'origine dans .NET?

Pourquoi «String.replace» ne modifie-t-il pas la chaîne d'origine dans .NET?

Mary-Kate Olsen
Libérer: 2025-01-30 07:51:09
original
413 Les gens l'ont consulté

Why Doesn't `string.Replace` Modify the Original String in .NET?

.NET String Operation Explication détaillée: Pourquoi

ne peut pas modifier la chaîne d'origine? string.Replace

Question: La méthode ne peut pas modifier la chaîne

Replace Dans le fragment de code suivant, la méthode

semble être incapable de modifier la chaîne:

string.Replace

Même si les paramètres sont efficaces, la chaîne reste inchangée.
<code class="language-csharp">string someTestString = "<a href=\"myfoldert/108716305-1.jpg\" target=\"_blank\">108716305-1.jpg</a>";
someTestString.Replace("108716305", "NewId42");</code>
Copier après la connexion

Explication La chaîne dans

.NET est immuable, ce qui signifie que leur contenu ne peut pas être directement modifié. Lors de l'appel , il crée une nouvelle chaîne contenant la valeur de remplacement, plutôt que de modifier la chaîne d'origine.

Solution

Pour mettre à jour la chaîne, vous avez besoin: string.Replace

Stockez les résultats de dans une nouvelle variable:

  1. Si vous souhaitez observer le comportement de "String a été mis à jour", redémarrez la variable d'origine: string.Replace
<code class="language-csharp">var newString = someTestString.Replace(someID.ToString(), sessionID);</code>
Copier après la connexion
Il convient de noter que cela convient à toutes les fonctions de fonctionnement de la chaîne dans .NET, telles que
    ,
  1. ,
  2. et
variantes, car elles renvoient toutes une nouvelle chaîne et ne fonctionnent pas la chaîne d'origine.
<code class="language-csharp">someTestString = someTestString.Replace(someID.ToString(), sessionID);</code>
Copier après la connexion

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal