I want to get the last 5 digits/characters from a string. For example, from "I will be going to school in 2011!"
, I would like to get "2011!"
.
Any ideas? I know Visual Basic has Right(string, 5)
; this didn't work for me and gave me an error.
I want to get the last 5 digits/characters from a string. For example, from "I will be going to school in 2011!"
, I would like to get "2011!"
.
Any ideas? I know Visual Basic has Right(string, 5)
; this didn't work for me and gave me an error.
str.Substring(str.Length - 5)
Checks for errors:
Dim result As String = str
If str.Length > 5 Then
result = str.Substring(str.Length - 5)
End If
in VB 2008 (VB 9.0) and later, prefix Right() as Microsoft.VisualBasic.Right(string, number of characters)
Dim str as String = "Hello World"
Msgbox(Microsoft.VisualBasic.Right(str,5))
'World"
Same goes for Left() too.
The accepted answer of this post will cause error in the case when the string length is lest than 5. So i have a better solution. We can use this simple code :
If(str.Length <= 5, str, str.Substring(str.Length - 5))
You can test it with variable length string.
Dim str, result As String
str = "11!"
result = If(str.Length <= 5, str, str.Substring(str.Length - 5))
MessageBox.Show(result)
str = "I will be going to school in 2011!"
result = If(str.Length <= 5, str, str.Substring(str.Length - 5))
MessageBox.Show(result)
Another simple but efficient solution i found :
str.Substring(str.Length - Math.Min(5, str.Length))
Dim a As String = Microsoft.VisualBasic.right("I will be going to school in 2011!", 5)
MsgBox("the value is:" & a)