The Replace()
method returns a new string by replacing each matching character/substring in the string with the new character/substring.
Example
using System;
namespace CsharpString {
class Test {
public static void Main(string [] args) {
string str = "Programming is fun";
// replaces "Programming" with "C#"
string result = str.Replace("Programming", "C#");
Console.WriteLine(result);
Console.ReadLine();
}
}
}
// Output: C# is fun
Replace() Syntax
The syntax of the string Replace()
method is:
Replace(string oldValue, string newValue)
Here, Replace()
is a method of class String
.
Replace() Parameters
The Replace()
method takes the following parameters:
- oldValue - the substring that we want to replace
- newValue - new substring which will replace the old substring
Replace() Return Value
- The
Replace()
method returns a new string by replacing each matching character/substring in the string with the new character/substring.
Example 1: C# String Replace() Characters
using System;
namespace CsharpString {
class Test {
public static void Main(string [] args) {
string str = "Bat";
Console.WriteLine("Old value: " + str);
string result;
// replaces 'B' with 'C''
result = str.Replace('B', 'C');
Console.WriteLine("New value: " + result);
Console.ReadLine();
}
}
}
Output
Old value: Bat New value: Cat
In the above example, the Replace()
method replaces the character 'B'
with 'C'
.
Example 2: C# String Replace() Substrings
using System;
namespace CsharpString {
class Test {
public static void Main(string [] args) {
string str = "C# Programming";
string result;
// replaces "C#" with "Java"
result = str.Replace("C#", "Java");
Console.WriteLine("New Value1: " + result);
// returns initial string
result = str.Replace("Go", "C++");
Console.WriteLine("New Value2: " + result);
Console.ReadLine();
}
}
}
Output
New Value1: Java Programming New Value2: C# Programming
str.Replace("C#", "Java")
- replaces substring"C#"
with string"Java"
str.Replace("Go", "C++")
- returns the initial string because there is no"Go"
substring
Example 3: Replace() Chain
using System;
namespace CsharpString {
class Test {
public static void Main(string [] args) {
string str = "AAA";
Console.WriteLine("Old Value: "+ str);
string result;
// performs multiple replacement
result = str.Replace("AAA", "BBB").Replace("BBB", "CCC");
Console.WriteLine("New Value: " + result);
Console.ReadLine();
}
}
}
Output
Old Value: AAA New Value: CCC
In the above example, we have performed multiple replacements in the initial string.
Method calls are executed left to right. So,
- first,
"AAA"
will be replaced by"BBB"
- then,
"BBB"
will be replaced by"CCC"
.
Hence, we get "CCC"
as the output.
Note: The Replace()
method does not modify the value of the current instance. Instead, it returns a new string by replacing the occurrence of old values with new values.