Vb.net 我怎样才能从字符串中得到第一个和最后一个字母?
如何让程序从输入的字符串中提取第一个和最后一个字母 示例:“有人告诉我我是个笨蛋!” 输出:“IebntdIaman!”Vb.net 我怎样才能从字符串中得到第一个和最后一个字母?,vb.net,Vb.net,如何让程序从输入的字符串中提取第一个和最后一个字母 示例:“有人告诉我我是个笨蛋!” 输出:“IebntdIaman!” 我尝试使用Split,但运气不佳。试试这样的方法。因为您有两个单字符单词,所以我使用了一个条件,以获得所需的输出。我还使用删除空条目的方法来防止零长度项,然后获取结果并使用该方法解析出起始字符和结束字符 Sub Main() Dim splitChar As String() = {" "} Dim example As String = " I've bee
我尝试使用Split,但运气不佳。试试这样的方法。因为您有两个单字符单词,所以我使用了一个条件,以获得所需的输出。我还使用删除空条目的方法来防止零长度项,然后获取结果并使用该方法解析出起始字符和结束字符
Sub Main()
Dim splitChar As String() = {" "}
Dim example As String = " I've been told I am a noob!"
Dim output As String = ""
Dim result As String() = example.Split(splitChar, StringSplitOptions.RemoveEmptyEntries)
For Each item In result
If item.Length > 1 Then
output += item.Substring(0, 1) & item.Substring(item.Length - 1, 1)
Else
output += item.Substring(0, 1)
End If
Next
Console.WriteLine(output)
Console.ReadLine()
End Sub
这很有效:
Dim example As String = "I've been told I am a noob!"
Dim result = New String( _
example _
.Split(" "c) _
.SelectMany(Function (w) _
If(w.Count() = 1, _
new Char() { w(0) }, _
New Char() { w.First(), w.Last() })) _
.ToArray())
'IebntdIaman!
非常感谢您的快速回复!然而,我并不是100%理解
(0,1)&item.Substring(item.Length-1,1)
的意思。你能解释一下吗?@ USER 2671434,我认为这是一个非常愚蠢的问题。您可以在MSDN文档中使用loook,或者使用intellisense功能了解每个参数的作用。字符串实际上是一个字符数组,这些行的第一个状态是从字符串的第一个字母(位置0)开始,只获取一个字符,这将是第一个字符。第二条语句声明您希望以字符串长度-1开始,因为您的数组是基于0的,并且要获得一个字符。而且,&操作符只是将它们连接在一起。@ElektroStudios对不起。我只是好奇。我可能只需要看一下文档就可以了。我弄错了。@MarkHall非常感谢你!