Есть ли лучший способ удалить конечную часть строки в .NET?

Для удаления завершающей части я использую код

str.substring(0,str.length -2) 

Есть ли лучший способ? Мне особенно не нравится использование str.length.

Править Я хотел, чтобы вопрос был как можно короче и проще, и я предположил, что просто пропустил какой-то метод String. Я стараюсь быть более точным.

Мне нужно удалить заданное количество символов с конца строки. Меня не волнует, что это за персонажи, и я не хочу рисковать удалением большего количества персонажей.

Если число больше длины строки, допустим исключение (строка должна быть проверена раньше).

У меня проблема не столько с длиной, сколько с двойной ссылкой на переменную (представьте себе функцию вместо переменной). Мне также не нравится необходимость вычитания, но это только личное предпочтение.

Решение VB.NET

Вопрос помечен тегом vb.net, поэтому есть код vb.net (должен быть в модуле):

<System.Runtime.CompilerServices.Extension> _
Public Shared Function RemoveFromEnd(stringValue As String, removedCharacters As Integer) As String
    Return stringValue.Substring(0, stringValue.Length - removedCharacters)
End Function
5
задан Joel Coehoorn 3 December 2012 в 03:37
поделиться