2

假设我的字符串是:

test!

我想得到第一个字符

测试

我也想得到最后一个字符

测试!

我怎样才能做到这一点?

4

4 回答 4

6

最简单的是使用 LINQ:

Dim firstChar = str.First()
Dim lastChar  = str.Last()

您可以使用 LINQ,因为 aString也是IEnumerable(Of Char)隐含的。

您也可以像Char-Array(String.Chars是默认属性) 一样使用它并通过索引访问第一个和最后一个字符:

firstChar = str(0)
lastChar  = str(str.Length - 1)
于 2012-06-20T12:13:21.880 回答
2
Dim test As String = "test!"
Dim first As String = test.Substring(0, 1)
Dim last As String = StrReverse(test).Substring(0, 1)
MessageBox.Show("First: " & first & " Last:" & last)
于 2012-06-20T12:12:31.380 回答
0

Substring(0, 1)返回first character of a string. 要获取最后一个字符,您可以reverse使用StrReverse()获取字符串并执行相同操作,如下所示:

Dim str = "test!";
Dim Firstletter = str.Substring(0, 1); //Returns t
Dim Lastletter  = StrReverse(str).Substring(0, 1) //Returns !

希望这可以帮助。

于 2012-06-20T12:14:51.017 回答
0

估计这应该是最快的。(Linq 很棒,但对于这样的事情,它是矫枉过正的。)

    Dim testString As String = "Some test..."
    Dim firstCharacter As Char, lastCharacter As Char

    ' If you want chFirst and chLast as String not Char, just use ToString() on the returned char.
    If Not String.IsNullOrEmpty(testString) Then
        firstCharacter = testString(0)
        lastCharacter = testString(testString.Length - 1)
    End If
于 2012-06-20T12:16:10.937 回答