回答
如果你想在你可以使用LINQ查询字符串中的最后一个字母字符,如(C#):
var d = from c in myString.ToCharArray().Reverse()
where Char.IsLetter(c)
select c;
return d.First();
请参阅问题:VB字符串。 – NTDLS 2010-02-24 16:01:12
string.Substring(string.Length - 2,1);
对不起它已经有一段时间,因为我做VB所以这可能不会是完美的(并且可能是C#和VB的混合物),但你的想法:
Dim s = "V1245-12V0"
Dim lastButOneLetter = String.Empty
If s.Length > 1 Then
'Can only get the last-but-one letter from a string that is minimum 2 characters
lastButOneLetter = s.Substring(s.Length - 2, 1)
Else
'do something if string is less than 2 characters
End If
编辑:固定为编译VB .NET代码。
使用Substring
上包含“V1245-12V0”
s.Substring(s.Length - 2, 1);
请问我为什么这是downvoted?正如其他人曾经以类似的形式提到过这种... ... downvote和不留下评论被认为是非常粗鲁和无知,这是违背SO的精神。如果我低估了你的回答,不发表评论,你不知道是什么原因......你会如何? – t0mm13b 2010-02-24 16:12:33
这可能来自Joel Potter不同意使用子字符串。如果你注意到使用Substring的每个答案都被低估了,即使它是基于我们提供的信息的完美解决方案。downvote国际海事组织是一个答案,不解决原来的问题,不是因为某人的个人喜好。 – 2010-02-24 16:25:06
@安迪:我发表了评论,他的回答.... – t0mm13b 2010-02-24 16:39:56
你可以有自己的功能,如
Function Left(ByVal str as string, byval index as integer) As String
Left=str.Substring(0,index);
End Function
Function Right(ByVal str as string, byval index as integer) As String
Right=str.Substring(str.Length-index)
End Function
,并利用它们来获得你所需要的字符串s。
This _is_ VB:你已经有'Left','Mid'和'Right'了。 – 2016-08-27 18:28:02
Dim secondToLastChar As Char
secondToLastChar = Microsoft.VisualBasic.Strings.GetChar(mystring, mystring.Length - 2)
http://msdn.microsoft.com/en-us/library/4dhfexk4(VS.80).aspx
或者只记得任何字符串是字符数组;
secondToLastChar = mystring(mystring.Length - 2)
是不是很难?
dim mychar as string
dim yourstring as string
yourstring="V1245-12V0"
mychar=yourstring.Substring(yourstring.Length - 2, 1)
不要使用子得到的只是一个字符
Dim MyString As String = "V1245-12V0"
Dim MyChar As Char = MyString(MyString.Length - 2)
我同意。看不到为什么80%的答案选择了这种方法。 – Joel 2010-02-24 16:04:00
基于OP后来想用这个角色做什么更灵活。我会使用字符串来支持字符串的唯一原因是,除非我绝对确信它将始终是一个必需的字符,并且有人不会说“实际上我现在想要字符串中的2个字符”,或者我绝望地缺乏内存,比如嵌入式设备。 – 2010-02-24 16:29:34
这里是一个VB的解决方案:
Dim text = "V1245-12V0"
Dim v = Left(Right(text, 2), 1)
你做不需要检查的text
长度,除了你的语义是什么你想为空发生(和Nothing
)和单个字符字符串。
- 1. 只显示最后一个字符串的字符串数组
- 2. C#只写最后一个字符串
- 3. 删除字符串的最后一个字符(VB.NET 2008)
- 4. 在字符'?'之后从字符串中获取最后一个字符串
- 5. 字符串的第一个字符和最后一个字符
- 6. 最后一个字符串
- 7. 验证字符串有没有空间字符,只有第一和最后一个字符作为分隔符
- 8. 删除字符串中最后一个空格后的最后一个字符
- 9. cout:最后一个字符串覆盖第一个字符串
- 10. 只删除字符串ArrayList中的最后一个字
- 11. 最后,但在一个字符串在VB.NET
- 12. 动态删除最后一个字符串后/从字符串
- 13. VB.NET字符串操作 - 只有一个字母帽的帽子
- 14. 获取字符串中的最后一个子字符串?
- 15. 仅在最后一个字符更新后保留字符串
- 16. 在Excel中提取字符串的最后一个字符
- 17. 从C字符串中剥离第一个字符和最后一个字符
- 18. 删除字符串中的最后一个字符和第一个字符
- 19. 大写字母只能在字符串中最后4个字符
- 20. PHP在最后一个字符串
- 21. Datastage,只删除字符串的最后两个字符
- 22. vb.net SQL连接字符串,只写入数据库中的最后一个值
- 23. 阵的字符串替换只有最后一个元素
- 24. 删除字符串最后一个字母后的所有字符JS
- 25. 字符串的最后一个字符前加逗号在C#
- 26. 替换字符串中的最后一个字符
- 27. C++获取字符串中的最后一个字符
- 28. 如何获取C++中字符串的最后一个字符
- 29. 修剪字符串中的最后一个字符
- 30. 修剪字符串,删除C中的最后一个字符#
您是否总是希望字符串中的第二个字符或最后一个字符?这个问题有点含糊。 – JoshBerke 2010-02-24 15:58:35