从vb.net中的字符串末尾只删除一个换行符

时间:2014-02-17 06:18:44

标签: vb.net

我有一个如下所示的字符串

test1
test2
test3
newline
newline
newline

这里我使用s = s.TrimEnd(ControlChars.Cr, ControlChars.Lf)仅删除最后一个换行符,但它删除了所有三个换行符。

我想从字符串中删除最后一个新行(如果有的话)

提前致谢...

4 个答案:

答案 0 :(得分:4)

您可以尝试:

if (s.EndsWith(Environment.NewLine)) {
s = s.Remove(s.LastIndexOf(Environment.NewLine)) }

答案 1 :(得分:0)

  

获取最后一个空格,然后获取子字符串。

Dim lastIndex = s.lastIndexOf(" ")
s = s.substring(0, lastIndex)

(OR)

  

使用split功能

Dim s = "test1 test2 test3 newline newline newline"
Dim mySplitResult = myString.split(" ")
Dim lastWord =  mySplitResult[mySplitResult.length-1] 

答案 2 :(得分:0)

我们可以这样做

Dim stringText As String() = "test1 test2 test3 newline newline newline"

Dim linesSep As String() = {vbCrLf}
Dim lines As String() = stringText.Split(linesSep, StringSplitOptions.None)
If stringText.EndsWith(vbCrLf) Then
   Dim strList As New List(Of String)
   strList.AddRange(lines)
   strList.RemoveAt(lines.Length - 1)
   lines = strList.ToArray
End If

它对我有用!!!!

答案 3 :(得分:-1)

你走了。

s = s.substring(0, s.lastindexof(characterToBeRemoved))