Skip to content

๐Ÿ”– String โ€‹

go
import (
	"fmt"
	"github.com/thuongtruong109/gouse"
)

1. String capitalize โ€‹

Description: Capitalize the first letter of a string.
Input params: (s string)

go
func StringCapitalize() {
	var str = "hello world"
	println(gouse.Capitalize(str))
}

2. String camel case โ€‹

Description: Convert string to Camel Case.
Input params: (s string)

go
func StringCamelCase() {
	var str = "convert_any-string TO-camelCase in Go! 123"
	println("Convert string to Camel Case: ", gouse.CamelCase(str))
}

3. String snake case โ€‹

Description: Convert string to Snake Case.
Input params: (s string)

go
func StringSnakeCase() {
	var str1 = "hello world"
	var str2 = "ConvertThisString123"
	println("Convert string to Snake Case: ", gouse.SnakeCase(str1), gouse.SnakeCase(str2))
}

4. String kebab case โ€‹

Description: Convert string to Kebab Case.
Input params: (s string)

go
func StringKebabCase() {
	var str = "hello world"
	println("Convert string to Kebab Case: ", gouse.KebabCase(str))
}

5. String space case โ€‹

Description: Convert string to Space Case.
Input params: (s string)

go
func StringSpaceCase() {
	var str = "hello world"
	println("Convert string to Space Case: ", gouse.SpaceCase(str))
}

6. String custom case โ€‹

Description: Convert string to custom.
Input params: (s string, separator string)

go
func StringCustomCase() {
	var str = "hello world"
	println("Convert string to Custom Case: ", gouse.CustomCase(str, "%"))
}

7. String is letter โ€‹

Description: Check is letter character.
Input params: (s string)

go
func StringIsLetter() {
	var str = "hello world"
	println("Check is letter character: ", gouse.IsLetter(str[0]))
}

8. String is digit โ€‹

Description: Check is number character.
Input params: (s string)

go
func StringIsDigit() {
	var str = "1hello world"
	println("Check is number character: ", gouse.IsDigit(str[0]))
}

9. String includes โ€‹

Description: Check is contain substring in string.
Input params: (s string, substr string)

go
func StringIncludes() {
	var str = "hello world, this is world"
	println("Check substring in string: ", gouse.Includes(str, "world"))
}

10. String is lower โ€‹

Description: Check is lower string.
Input params: (s string)

go
func StringIsLower() {
	var str = "hELLO WORLD"
	println("Check is lower string: ", gouse.IsLower(str[0]))
}

11. String is upper โ€‹

Description: Check is upper string.
Input params: (s string)

go
func StringIsUpper() {
	var str = "Hello world"
	println("Check is upper string: ", gouse.IsUpper(str[0]))
}

12. String split โ€‹

Description: Split string by separator.
Input params: (s string, separator string)

go
func StringSplit() {
	var str = "hello world"
	fmt.Println("Split string by separator: ", gouse.Split(str, "l"))
}

13. String words โ€‹

Description: Split string by single word
Input params: (s string)

go
func StringWords() {
	var str = "hello world"
	println("Split string to array of words: ", gouse.Words(str))

}

14. String reverse โ€‹

Description: Reverse string.
Input params: (s string)

go
func StringReverse() {
	var str = "hello world"
	println("Reverse string: ", gouse.Reverse(str))
}

15. String lower โ€‹

Description: Convert string to lower case.
Input params: (s string)

go
func StringLower() {
	var str = "HELLO WORLD"
	println("Lower string (string): ", gouse.Lowers(str))
	println("Lower string (byte): ", gouse.Lower(str[0]))
	println("Lower first string: ", gouse.LowerFirst(str))
}

16. String upper โ€‹

Description: Convert string to upper case.
Input params: (s string)

go
func StringUpper() {
	var str = "hello world"
	println("Upper string (string): ", gouse.Uppers(str))
	println("Upper string (byte): ", gouse.Upper(str[0]))
	println("Upper first string: ", gouse.UpperFirst(str))
}

17. String repeat โ€‹

Description: Repeat string n times.
Input params: (struct interface{}, fieldName string, value interface{})

go
func StringRepeat() {
	var str = "hello world"
	println("Repeat string: ", gouse.Repeat(str, 3))
}

18. String truncate โ€‹

Description: Truncate string to n characters or add suffix.
Input params: (s string, length int, suffix ...string)

go
func StringTruncate() {
	var str = "hello world"
	println("Truncate string (default): ", gouse.Truncate(str, 5))
	println("Truncate string (custom): ", gouse.Truncate(str, 5, "***"))
}

19. String replace โ€‹

Description: Replace substring in string.
Input params: (s string, old string, new string)

go
func StringReplace() {
	var str = "hello world, this is world"
	println("Replace string: ", gouse.Replace(str, "world", "golang"))
}

20. String trim โ€‹

Description: Trim left and right space in string.
Input params: (s string)

go
func StringTrim() {
	var str = "   hello world, this is world   "
	println("Trim string: ", gouse.Trim(str))
	println("Trim left string: ", gouse.LTrim(str))
	println("Trim right string: ", gouse.RTrim(str))
}

21. String trim blank โ€‹

Description: Trim left and right blank in string.
Input params: (s string)

go
func StringTrimBlank() {
	println("Trim blank string: ", gouse.TrimBlank("   hello world, this is world   "))
	println("Trim left blank string: ", gouse.TrimBlank("   hello world, this is world   \t"))
	println("Trim right blank string: ", gouse.TrimBlank("   hello world, this is world   \n"))
}

22. String trim prefix โ€‹

Description: Trim left and right prefix in string.
Input params: (s string, prefix string)

go
func StringTrimPrefix() {
	var str = "   hello world, this is world   "
	println("Trim prefix string: ", gouse.TrimPre(str, "   "))
	println("Trim suffix string: ", gouse.TrimSuf(str, "   "))
}

23. String trim suffix โ€‹

Description: Trim left and right suffix in string.
Input params: (s string, suffix string)

go
func StringTrimSuffix() {
	var str = "   hello world, this is world   "
	println("Trim suffix string: ", gouse.TrimSuf(str, "   "))
}

24. String join โ€‹

Description: Join string array to string.
Input params: (s []string, separator string)

go
func StringJoin() {
	var str = []string{"hello", "world"}
	println("Join string: ", gouse.Join(str, "-"))
}

25. String concat โ€‹

Description: Concat string.
Input params: (s ...string)

go
func StringConcat() {
	println("Concat string: ", gouse.Concat("hello", "world"))
}

26. String sub str โ€‹

Description: Get substring from string.
Input params: (s string, start int, end ...int)

go
func StringSubStr() {
	var str = "hello world, this is world"
	println("Sub string: ", gouse.SubStr(str, 0, 5))
	println("Sub string: ", gouse.SubStr(str, 0, 1))
	println("Sub string (only start): ", gouse.SubStr(str, -5))
	println("Sub string (with negative index): ", gouse.SubStr(str, -5, -1))
}

27. String slice โ€‹

Description: Slice string from start to end.
Input params: (s string, start int, end ...int)

go
func StringSlice() {
	var str = "hello world, this is world"
	println("Slice string: ", gouse.Slice(str, 0, 5))
	println("Slice string: ", gouse.Slice(str, 0, 1))
	println("Slice string (only start): ", gouse.Slice(str, -5))
	println("Slice string (not parameters): ", gouse.Slice(str))
	println("Slice string (with negative index): ", gouse.Slice(str, -5, -1))
}

28. String splice โ€‹

Description: Splice string from start to end.
Input params: (s string, start int, end int, replace ...string)

go
func StringSplice() {
	var str = "helloworld, this is world"
	println("Splice string (default not replace): ", gouse.Splice(str, 0, 5))
	println("Splice string (with replace): ", gouse.Splice(str, 1, 5, "golang"))
	println("Splice string (with replace multiple): ", gouse.Splice(str, 1, 5, "golang1", "golang2"))
}

29. String starts with โ€‹

Description: Check is start with substring in string.
Input params: (s string, subStr string)

go
func StringStartsWith() {
	var str = "hello world, this is world"
	println("Starts with: ", gouse.StartsWith(str, "hello"))
}

30. String ends with โ€‹

Description: Check is end with substring in string.
Input params: (s string, subStr string)

go
func StringEndsWith() {
	var str = "hello world, this is world"
	println("Ends with: ", gouse.EndsWith(str, "world"))
}

31. String escape โ€‹

Description: Convert string to HTML entities.
Input params: (s string)

go
func StringEscape() {
	var str = "This is a <b>bold</b> statement & \"quote\" โ€“ ยฉ ยฎ"
	println("Escape string: ", gouse.Esc(str))
}

32. String unescape โ€‹

Description: Convert HTML entities to string.
Input params: (s string)

go
func StringUnescape() {
	var str = "This is a &lt;b&gt;bold&lt;/b&gt; statement &amp; &quot;quote&quot; โ€“ ยฉ ยฎ"
	println("Unescape string: ", gouse.Unesc(str))
}

33. String pad โ€‹

Description: Add padding to string from left or right.
Input params: (s string, length int, padStr string)

go
func StringPad() {
	var str = "hello world"
	println("Pad-left string: ", gouse.LPad(str, 20, '$'))
	println("Pad-right string: ", gouse.RPad(str, 20, '@'))
}

34. String count โ€‹

Description: Count words/substr in string.
Input params: (s string, substr ...string)

go
func StringCount() {
	var str = "hello world wo wo"
	println("Count words/substr in string (default): ", gouse.Count(str))
	println("Count words/substr in string (with char): ", gouse.Count(str, "wo"))
}

35. String lines โ€‹

Description: Count lines in string.
Input params: (s string)

go
func StringLines() {
	var str = "hello world\nwo wo"
	println("Count lines of string: ", gouse.Lines(str))
}

36. String index โ€‹

Description: Get index of substring in string.
Input params: (s string, substr string)

go
func StringIndex() {
	var str = "hello world, this is world"

	f1, l1 := gouse.IdxSubStr(str, "l")
	fmt.Printf("First index start at: %d, end at: %d\n", f1, l1)

	f2, l2 := gouse.IdxSubStr(str, "world")
	fmt.Printf("First index start at: %d, end at: %d\n", f2, l2)

	f3 := gouse.FirstIdx(str, "l")
	fmt.Println("First index start at: ", f3)

	l3 := gouse.LastIdx(str, "world")
	fmt.Println("Last index start at: ", l3)

	f4, l4 := gouse.IdxSubStr(str, "oo")
	if f4 == -1 || l4 == -1 {
		fmt.Println("Not found")
	}

	if gouse.FirstIdx(str, "oo") == -1 {
		fmt.Println("Not found")
	}

	if gouse.LastIdx(str, "oo") == -1 {
		fmt.Println("Not found")
	}
}

37. String random chain โ€‹

Description: Random chain string.
Input params: (length int)

go
func StringRandomChain() {
	println("Random chain string: ", gouse.RandStr(10))
	println("Random chain number: ", gouse.RandDigit(6))
}

38. String at โ€‹

Description: Get character at index in string.
Input params: (s string, index int)

go
func StringAt() {
	var str = "hello world"
	println("At string: ", gouse.At(str, 1))
	println("At string: ", gouse.At(str, -5))
}

39. String code point at โ€‹

Description: Get code point at index in string.
Input params: (s string, index int)

go
func StringCodePointAt() {
	var str = "hello world"
	println("Code point at string: ", gouse.CodePointAt(str, 1))
	println("Code point at string: ", gouse.CodePointAt(str, -5))
}

40. String code point โ€‹

Description: Get code point of string.
Input params: (s string)

go
func StringCodePoint() {
	asciiValues := gouse.CodePoint("hello world")

	print("Code point string: ")
	for _, asciiValue := range asciiValues {
		fmt.Printf("%d ", asciiValue)
	}
}

41. String from code point at โ€‹

Description: Transform code point to string.
Input params: (codePoint int)

go
func StringFromCodePointAt() {
	println("From code point at string: ", gouse.FromCodePointAt(9733))
	println("From code point at string: ", gouse.FromCodePointAt(9731))
}

42. String from code point โ€‹

Description: Transform multi code points to string.
Input params: (codePoints ...int)

go
func StringFromCodePoint() {
	println("From code point string: ", gouse.FromCodePoint(104, 101, 108, 108, 111, 32, 119, 111, 114, 108, 100))
}

Released under the MIT License.