How to make the first letter of a string uppercase in Go Language?

How to make the first letter of a string uppercase, but not change the case of any of the other letters?

For example:

"go language is awesome" → "Go language is awesome"
"hello world" → "Hello world"

Solution 1: Easy

package main

import (
"unicode"
)

// Main function
func main() {

str := "go language is awesome"
runes := []rune(str)
if len(runes) > 0 {
runes[0] = unicode.ToUpper(runes[0])
}
println(string(runes))
}

Output:



Solution 2: Easy

package main

import "strings"

// Main function
func main() {

str := "go language is awesome"
str = strings.ToUpper(string(str[0])) + str[1:]
println(str)
}

Output:




Solution 3: Normal

package main

import (
"unicode"
"unicode/utf8"
)

// Main function
func main() {

str := "go language is awesome"
println(firstToUpper(str))
}

func firstToUpper(s string) string {
if len(s) > 0 {
r, size := utf8.DecodeRuneInString(s)
if r != utf8.RuneError || size > 1 {
up := unicode.ToUpper(r)
if up != r {
s = string(up) + s[size:]
}
}
}
return s
}

Output:


Popular posts from this blog

Learn Java 8 streams with an example - print odd/even numbers from Array and List

Spring boot video streaming example-HTML5

Spring Boot + Mockito simple application with 100% code coverage

Spring Boot + OpenCSV Export Data to CSV Example

Custom Exception Handling in Quarkus REST API

Registration and Login with Spring Boot + Spring Security + Thymeleaf

DataTable-Pagination example with Spring boot, jQuery and ajax

Spring Webflux File Download - REST API Example

Node JS mini projects with source code - free download

ReactJS, Spring Boot JWT Authentication Example