Ответ 1
YourString = YourString.Remove(YourString.Length - 1);
У меня есть числовая строка, которая может быть "124322"
или "1231.232"
или "132123.00"
. Я хочу удалить последний символ моей строки (что бы это ни было). Поэтому я хочу, чтобы моя строка "99234"
стала "9923"
.
Длина строки является переменной. Это не константа, поэтому я не могу использовать string.Remove или trim или некоторые вроде них (я думаю).
Как мне это достичь?
YourString = YourString.Remove(YourString.Length - 1);
var input = "12342";
var output = input.Substring(0, input.Length - 1);
или
var output = input.Remove(input.Length - 1);
newString = yourString.Substring(0, yourString.length -1);
Если вы используете string
тип данных, ниже работает код:
string str = str.Remove(str.Length - 1);
Но когда у вас есть StringBuilder
, вы также должны указать length
второго параметра.
То есть,
string newStr = sb.Remove(sb.Length - 1, 1).ToString();
Чтобы избежать ошибки ниже:
Если это то, что вам нужно сделать много в вашем приложении, или вам нужно связать разные вызовы, вы можете создать метод расширения:
public static String TrimEnd(this String str, int count)
{
return str.Substring(0, str.Length - count);
}
и назовите его:
string oldString = "...Hello!";
string newString = oldString.Trim(1); //returns "...Hello"
или прикованный цепью:
string newString = oldString.Substring(3).Trim(1); //returns "Hello"