Use string.Remove() to remove character(s) from a string based on their index, such as the first or last character. This method has two parameters:
- startIndex: The position in the string to start removing characters.
- count: How many characters to remove.
string.Remove() returns a new string with the characters removed. I’ll show examples below.
Remove the first character from a string
To remove the first character, use string.Remove(startIndex: 0, count: 1), like this:
string input = "hello";
string cleanedInput = input.Remove(startIndex: 0, count: 1);
Console.WriteLine($"Before: {input}");
Console.WriteLine($"After: {cleanedInput}");
Code language: C# (cs)
This outputs the following:
Before: hello
After: ello
Code language: plaintext (plaintext)
Example: Remove the first 3 characters from a string
To remove the first N characters, set count to however how many characters you want to remove. For example, to remove the first 3 characters, use string.Remove(startIndex: 0, count: 3), like this:
string input = "hello";
string cleanedInput = input.Remove(startIndex: 0, count: 3);
Console.WriteLine($"Before: {input}");
Console.WriteLine($"After: {cleanedInput}");
Code language: C# (cs)
This outputs the following:
Before: hello
After: lo
Code language: plaintext (plaintext)
Remove the last character from a string
The last character is at index Length – 1. Therefore, to remove the last character, use string.Remove(input.Length – 1), like this:
string input = "world";
string cleanedInput = input.Remove(startIndex: input.Length - 1);
Console.WriteLine($"Before: {input}");
Console.WriteLine($"After: {cleanedInput}");
Code language: C# (cs)
This outputs the following:
Before: world
After: worl
Code language: plaintext (plaintext)
Example: Remove last 3 characters from a string
Notice that count is optional. If you don’t specify count, it’ll remove all characters starting at the specified index. So to remove the last N characters, use string.Remove(Length – N). Here’s an example of removing the last 3 characters:
string input = "world";
string cleanedInput = input.Remove(startIndex: input.Length - 3);
Console.WriteLine($"Before: {input}");
Console.WriteLine($"After: {cleanedInput}");
Code language: C# (cs)
This outputs:
Before: world
After: wo
Code language: plaintext (plaintext)
Example: Remove the second to last character from a string
You can remove a character from anywhere in the string by specifying its index and count=1. The last character is at index Length – 1, so the second to last character is at index Length – 2. Therefore, to remove the second to last character, use input.Remove(input.Length – 2, count: 1), like this:
string input = "hello worl@d";
string cleanedInput = input.Remove(input.Length - 2, count: 1);
Console.WriteLine($"Before: [{input}]");
Console.WriteLine($"After: [{cleanedInput}]");
Code language: C# (cs)
This outputs the following:
Before: [hello worl@d]
After: [hello world]
Code language: plaintext (plaintext)
Remove first and last character from a string
When you want to remove the first and last character at the same time, use string.Substring(). This is simpler than using multiple string.Remove() calls. With Substring(), you specify the starting index and the substring length. To get a substring excluding the first and last characters, use Substring(1, Length – 2), like this:
string input = "hello";
var cleanedInput = input.Substring(startIndex: 1, input.Length - 2);
Console.WriteLine($"Before: {input}");
Console.WriteLine($"After: {cleanedInput}");
Code language: C# (cs)
This outputs the following:
Before: hello
After: ell
Code language: plaintext (plaintext)