Удалить последний символ строки (VB.NET 2008) - PullRequest
6 голосов
/ 13 января 2011

Я пытаюсь удалить последний символ строки. Этот последний символ является новой строкой (System.Environment.NewLine).

Я пробовал кое-что, но не могу удалить.

Пример:

myString.Remove(sFP.Length - 1)

Пример 2:

myString= Replace(myString, Environment.NewLine, "", myString.Length - 1)

Как я могу это сделать?

Ответы [ 3 ]

16 голосов
/ 13 января 2011

Если ваша новая строка CR LF, на самом деле это два последовательных символа. Попробуйте свой Remove звонок с Length - 2.

Если вы хотите удалить все символы "\ n" и "\ r" в конце строки, попробуйте вызвать TrimEnd, передав символы:

str.TrimEnd(vbCr, vbLf)

Чтобы удалить все пробельные символы (символы новой строки, табуляции, пробелы, ...), просто наберите TrimEnd, не пропуская ничего.

3 голосов
/ 13 января 2011
Dim str As String = "Test" & vbCrLf
str = str.Substring(0, str.Length - vbCrLf.Length)

то же самое с Environment.NewLine вместо vbCrlf:

str = "Test" & Environment.NewLine
str = str.Substring(0, str.Length - Environment.NewLine.Length)

Кстати, разница в следующем: Environment.NewLine зависит от платформы (например, возвращает другую строку в другой ОС)

Ваш remove -приход не работал, потому что вы не присвоили возвращаемое значение этой функции исходной строковой ссылке:

str = str.Remove(str.Length - Environment.NewLine.Length)

или если вы хотите заменить все новые строки:

str = str.Replace(Environment.NewLine, String.Empty)
0 голосов
/ 11 августа 2015

Использование:

Dim str As String
str = "cars,cars,cars"
str = str.Remove(str.LastIndexOf(","))
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...