ZachHofmeister ZachHofmeister - 1 month ago 7
C# Question

C# Remove char a number of places from the end of a string

I'm trying to remove a character from inside a string, say, 3 spaces from the end. I'm using this to act as typing on a screen in a game in unity, think like a text editor, where you can use the arrow keys to move the cursor inside of the string to remove characters. For example,

"Hello World!"


After pressing left arrow 3 times (I know how to increase/decrease this number obviously, just not where to put the '3'), and then pressing backspace, it should become:

"Hello Wold!"


Currently I am using .Remove(0, text.Length - 1) (Didn't just copy/paste this code so might be a bit off, just memory) to remove characters from the end, but I don't believe that will work for this. Thank you for any help you give!

Answer

You can use the String.Remove overload which takes the starting point and number of characters to be removed:

string str = "Hello World!";
string resultStr = str.Remove(str.Length - 4, 1);

Make sure to check the string length first.

Comments