This commit is contained in:
24
internal/utils/to_title_case.go
Normal file
24
internal/utils/to_title_case.go
Normal file
@@ -0,0 +1,24 @@
|
||||
package utils
|
||||
|
||||
import "strings"
|
||||
|
||||
func ToTitleCase(name string) string {
|
||||
words := strings.Fields(name)
|
||||
for i, word := range words {
|
||||
if len(word) > 0 {
|
||||
// Handle hyphenated names
|
||||
if strings.Contains(word, "-") {
|
||||
parts := strings.Split(word, "-")
|
||||
for j, part := range parts {
|
||||
if len(part) > 0 {
|
||||
parts[j] = strings.ToUpper(string(part[0])) + strings.ToLower(part[1:])
|
||||
}
|
||||
}
|
||||
words[i] = strings.Join(parts, "-")
|
||||
} else {
|
||||
words[i] = strings.ToUpper(string(word[0])) + strings.ToLower(word[1:])
|
||||
}
|
||||
}
|
||||
}
|
||||
return strings.Join(words, " ")
|
||||
}
|
||||
Reference in New Issue
Block a user