TrimEnd() не работает
Я хочу обрезать конец строки, если она заканчивается на ",". Это запятая и пробел.
Я пробовал TrimEnd(', ')
, но это не работает. Это должно быть только в том случае, если строка заканчивается таким образом, поэтому я не могу просто использовать .Remove
для удаления двух последних символов. Как я могу это сделать?
Ответы
Ответ 1
string txt = "testing, ";
txt = txt.TrimEnd(',',' '); // txt = "testing"
Здесь используется перегрузка TrimEnd(params char[] trimChars)
. Вы можете указать 1 или более символов, которые образуют набор символов для удаления. В этом случае запятая и пространство.
Ответ 2
Это должно работать:
string s = "Bar, ";
if (s.EndsWith(", "))
s = s.Substring(0, s.Length - 2);
ИЗМЕНИТЬ
Подумайте об этом, это сделает хороший метод расширения:
public static String RemoveSuffix(this string value, string suffix)
{
if (value.EndsWith(suffix))
return value.Substring(0, value.Length - suffix.Length);
return value;
}
Ответ 3
Попробуйте следующее:
string someText = "some text, ";
char[] charsToTrim = { ',', ' ' };
someText = someText.TrimEnd(charsToTrim);
Работает для меня.
Ответ 4
"value, ".Trim().TrimEnd(",")
также должен работать.
Ответ 5
if (model != null && ModelState.IsValid)
{
var categoryCreate = new Categories
{
CategoryName = model.CategoryName.TrimStart().TrimEnd(),
Description = model.Description.TrimStart().TrimEnd()
};
_CategoriesService.Create(categoryCreate);
}
TrimStart(). TrimEnd() == Левая обрезка и правая обрезка