Skip to main content
.NET Framework Class Library
StringReplace Method (Char, Char)

Returns a new string in which all occurrences of a specified Unicode character in this instance are replaced with another specified Unicode character.

Namespace:   System
Assembly:  mscorlib (in mscorlib.dll)
Syntax
Public Function Replace ( _
	oldChar As [%$TOPIC/czx8s9ts_en-us_VS_110_1_0_0_0_0%], _
	newChar As [%$TOPIC/czx8s9ts_en-us_VS_110_1_0_0_0_1%] _
) As [%$TOPIC/czx8s9ts_en-us_VS_110_1_0_0_0_2%]
public [%$TOPIC/czx8s9ts_en-us_VS_110_1_0_1_0_0%] Replace(
	[%$TOPIC/czx8s9ts_en-us_VS_110_1_0_1_0_1%] oldChar,
	[%$TOPIC/czx8s9ts_en-us_VS_110_1_0_1_0_2%] newChar
)
public:
[%$TOPIC/czx8s9ts_en-us_VS_110_1_0_2_0_0%]^ Replace(
	[%$TOPIC/czx8s9ts_en-us_VS_110_1_0_2_0_1%] oldChar, 
	[%$TOPIC/czx8s9ts_en-us_VS_110_1_0_2_0_2%] newChar
)
member Replace : 
        oldChar:[%$TOPIC/czx8s9ts_en-us_VS_110_1_0_3_0_0%] * 
        newChar:[%$TOPIC/czx8s9ts_en-us_VS_110_1_0_3_0_1%] -> [%$TOPIC/czx8s9ts_en-us_VS_110_1_0_3_0_2%]
public function Replace(
	oldChar : [%$TOPIC/czx8s9ts_en-us_VS_110_1_0_4_0_0%], 
	newChar : [%$TOPIC/czx8s9ts_en-us_VS_110_1_0_4_0_1%]
) : [%$TOPIC/czx8s9ts_en-us_VS_110_1_0_4_0_2%]

Parameters

oldChar
Type: SystemChar

The Unicode character to be replaced.

newChar
Type: SystemChar

The Unicode character to replace all occurrences of oldChar.

Return Value

Type: SystemString
A string that is equivalent to this instance except that all instances of oldChar are replaced with newChar. If oldChar is not found in the current instance, the method returns the current instance unchanged.
Remarks

This method performs an ordinal (case-sensitive and culture-insensitive) search to find oldChar.

NoteNote

This method does not modify the value of the current instance. Instead, it returns a new string in which all occurrences of oldChar are replaced by newChar.

Because this method returns the modified string, you can chain together successive calls to the Replace method to perform multiple replacements on the original string. Method calls are executed from left to right. The following example provides an illustration.

Module Example
   Public Sub Main()
      Dim s As New String("a"c, 3)
      Console.WriteLine("The initial string: '{0}'", s)
      s = s.Replace("a"c, "b"c).Replace("b"c, "c"c).Replace("c"c, "d"c)
      Console.WriteLine("The final string: '{0}'", s)
   End Sub 
End Module 
' The example displays the following output: 
'       The initial string: 'aaa' 
'       The final string: 'ddd'
using System;

public class Example
{
   public static void Main()
   {
      String s = new String('a', 3);
      Console.WriteLine("The initial string: '{0}'", s);
      s = s.Replace('a', 'b').Replace('b', 'c').Replace('c', 'd');
      Console.WriteLine("The final string: '{0}'", s);
   }
}
// The example displays the following output: 
//       The initial string: 'aaa' 
//       The final string: 'ddd'
Examples

The following example creates a comma separated value list by substituting commas for the blanks between a series of numbers.

Class stringReplace1
   Public Shared Sub Main()
      Dim str As [String] = "1 2 3 4 5 6 7 8 9"
      Console.WriteLine("Original string: ""{0}""", str)
      Console.WriteLine("CSV string:      ""{0}""", str.Replace(" "c, ","c))
   End Sub 
End Class 
' This example produces the following output: 
' Original string: "1 2 3 4 5 6 7 8 9" 
' CSV string:      "1,2,3,4,5,6,7,8,9"
using System;

class stringReplace1 {
    public static void Main() {
        String str = "1 2 3 4 5 6 7 8 9";
        Console.WriteLine("Original string: \"{0}\"", str);
        Console.WriteLine("CSV string:      \"{0}\"", str.Replace(' ', ','));
    }
}
// 
// This example produces the following output: 
// Original string: "1 2 3 4 5 6 7 8 9" 
// CSV string:      "1,2,3,4,5,6,7,8,9" 
//
using namespace System;
int main()
{
   String^ str = "1 2 3 4 5 6 7 8 9";
   Console::WriteLine( "Original string: \"{0}\"", str );
   Console::WriteLine( "CSV string:      \"{0}\"", str->Replace( ' ', ',' ) );
}

// 
// This example produces the following output: 
// Original string: "1 2 3 4 5 6 7 8 9" 
// CSV string:      "1,2,3,4,5,6,7,8,9" 
//
Version Information

.NET Framework

Supported in: 4.6, 4.5, 4, 3.5, 3.0, 2.0, 1.1

.NET Framework Client Profile

Supported in: 4, 3.5 SP1

XNA Framework

Supported in: 3.0, 2.0, 1.0

Portable Class Library

Supported in: Portable Class Library

Supported in: Windows Phone 8.1

Supported in: Windows Phone Silverlight 8.1

Supported in: Windows Phone Silverlight 8