string.go 631 B

12345678910111213141516171819202122
  1. package stringext
  2. import (
  3. "strings"
  4. "golang.org/x/text/cases"
  5. "golang.org/x/text/language"
  6. )
  7. func Capitalize(text string) string {
  8. return cases.Title(language.English, cases.Compact).String(text)
  9. }
  10. // NormalizeSpace normalizes whitespace in the given content string.
  11. // It replaces Windows-style line endings with Unix-style line endings,
  12. // converts tabs to four spaces, and trims leading and trailing whitespace.
  13. func NormalizeSpace(content string) string {
  14. content = strings.ReplaceAll(content, "\r\n", "\n")
  15. content = strings.ReplaceAll(content, "\t", " ")
  16. content = strings.TrimSpace(content)
  17. return content
  18. }