Return a string with its first character capitalized and the rest lowercased.
type(string) :: astring
astring = 'say all Hello WorLD!'
print '(L1)', astring%capitalize()//''=='Say all hello world!'
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
class(string), | intent(in) | :: | self |
The string. |
Upper case string.
elemental function capitalize(self) result(capitalized)
!< Return a string with its first character capitalized and the rest lowercased.
!<
!<```fortran
!< type(string) :: astring
!< astring = 'say all Hello WorLD!'
!< print '(L1)', astring%capitalize()//''=='Say all hello world!'
!<```
!=> T <<<
class(string), intent(in) :: self !< The string.
type(string) :: capitalized !< Upper case string.
integer :: c !< Character counter.
if (allocated(self%raw)) then
capitalized = self%lower()
c = index(LOWER_ALPHABET, capitalized%raw(1:1))
if (c>0) capitalized%raw(1:1) = UPPER_ALPHABET(c:c)
endif
endfunction capitalize