This Function uppercases the first letter. It acts upon a VB.NET String
. The value "test" becomes "Test". None
of the other characters should be modified.
If the first character is whitespace or a digit, it should not be affected. We introduce a custom method that uppercases the first letter.
UppercaseFirstLetter
receives a String
and returns a String
. In this function, we first test for null
or empty parameters, and exit early in this case.
ToCharArray
to convert the String
into a mutable array of characters.Char.ToUpper
to uppercase the first letter, and we finally return a String
instance built from the character array.Module Module1 Sub Main() Console.WriteLine(UppercaseFirstLetter("sam")) Console.WriteLine(UppercaseFirstLetter("perls")) Console.WriteLine(UppercaseFirstLetter(Nothing)) Console.WriteLine(UppercaseFirstLetter("VB.NET")) End Sub Function UppercaseFirstLetter(ByVal val As String) As String ' Test for nothing or empty. If String.IsNullOrEmpty(val) Then Return val End If ' Convert to character array. Dim array() As Char = val.ToCharArray ' Uppercase first character. array(0) = Char.ToUpper(array(0)) ' Return new string. Return New String(array) End Function End ModuleSam Perls VB.NET
This function, which uses the ToCharArray
constructor, avoids allocations. In performance analysis, eliminating string
allocations is often a clear win.
ToTitleCase
Instead of this custom implementation, you could use the ToTitleCase
function. With ToTitleCase
, every word is capitalized—this is a slightly different behavior.
We learned one way you can uppercase only part of a string
, such as the first letter. This method could be used to clean up poorly formatted character data.