How to remove all instances of a specific character from a string?

Like climbage said, your problem is definitely

Gamertag2.Replace("^"+1,"");

That line will only remove instances of "^1" from your string. If you want to remove all instances of "^", what you want is:

Gamertag2.Replace("^","");

You must assign the return value of String.Replace to your original string instance:

hence instead of(no need for the Contains check)

if (Gamertag2.Contains("^"))
{
    Gamertag2.Replace("^" + 1, "");
}

just this(what's that mystic +1?):

Gamertag2 = Gamertag2.Replace("^", "");

Two things:

1) C# Strings are immutable. You'll need to do this :

Gamertag2 = Gamertag2.Replace("^" + 1, "");

2) "^" + 1? Why are you doing this? You are basically saying Gamertag2.Replace("^1", ""); which I'm sure is not what you want.

Tags:

C#

String