Public Function AutoUpper(input As String) As String
Dim returns As New List(Of Char)
returns = input.ToCharArray.ToList
For l As Integer = 0 To returns.Count - 1
If Not (Char.IsWhiteSpace(returns(l))) Then
returns(l) = CType(returns(l).ToString.ToUpper, Char)
Exit For
End If
Next
For i As Integer = 0 To returns.Count - 1
If Not i = returns.Count - 1 Then
If (returns(i) = ".") Then
If input(i + 1) = " " Then
returns(i + 2) = CChar(returns(i + 2).ToString.ToUpper)
Else
returns(i + 1) = CChar(returns(i + 1).ToString.ToUpper)
End If
End If
End If
Next
Dim sb As New StringBuilder
For Each c In returns
sb.Append(c)
Next
Return sb.ToString
End Function