From 041ebacb8ccb699cd5aaaeea42daef1e10b933c7 Mon Sep 17 00:00:00 2001
From: iamyl <57165465@qq.com>
Date: Fri, 5 Nov 2021 01:20:18 +0800
Subject: [PATCH 01/17] =?UTF-8?q?=E6=B7=BB=E5=8A=A0gstr=E5=8C=85=E7=9A=84?=
=?UTF-8?q?=E5=AE=9E=E4=BE=8B?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
text/gstr/gstr_z_example_test.go | 1538 ++++++++++++++++++++++++++++++
1 file changed, 1538 insertions(+)
create mode 100644 text/gstr/gstr_z_example_test.go
diff --git a/text/gstr/gstr_z_example_test.go b/text/gstr/gstr_z_example_test.go
new file mode 100644
index 000000000..0bbfc8415
--- /dev/null
+++ b/text/gstr/gstr_z_example_test.go
@@ -0,0 +1,1538 @@
+package gstr
+
+import (
+ "fmt"
+
+ "github.com/gogf/gf/text/gstr"
+)
+
+func ExampleAddSlashes() {
+ var str string
+ str = `'aa'"bb"cc\r\n\d\t`
+ rsStr := gstr.AddSlashes(str)
+ fmt.Println(rsStr)
+
+ // Output:
+ // \'aa\'\"bb\"cc\\r\\n\\d\\t
+}
+
+func ExampleCaseCamel() {
+ var str string
+ str = `goframe_is very nice.to-use`
+ rsStr := gstr.CaseCamel(str)
+ fmt.Println(rsStr)
+
+ // Output:
+ // GoframeIsVeryNiceToUse
+}
+
+func ExampleCaseCamelLower() {
+ var str string
+ str = `goframe_is very nice.to-use`
+ rsStr := gstr.CaseCamelLower(str)
+ fmt.Println(rsStr)
+
+ // Output:
+ // goframeIsVeryNiceToUse
+}
+
+func ExampleCaseDelimited() {
+ var str string
+ var del uint8
+ str = `goframe_is_very-nice.to-use`
+ del = 35
+ rsStr := gstr.CaseDelimited(str, del)
+ fmt.Println(rsStr)
+
+ // Output:
+ // goframe#is#very#nice#to#use
+}
+
+func ExampleCaseDelimitedScreaming() {
+ var str string
+ var del uint8
+ var screaming bool
+ str = `goframe_is Very Nice.to-use`
+ del = 35
+ screaming = true
+ rsStr := gstr.CaseDelimitedScreaming(str, del, screaming)
+ fmt.Println(rsStr)
+
+ // Output:
+ // GOFRAME#IS#VERY#NICE#TO#USE
+}
+
+func ExampleCaseKebab() {
+ var str string
+ str = `goframe_is Very Nice.to-use`
+ rsStr := gstr.CaseKebab(str)
+ fmt.Println(rsStr)
+
+ // Output:
+ // goframe-is-very-nice-to-use
+}
+
+func ExampleCaseKebabScreaming() {
+ var str string
+ str = `goframe_is Very Nice.to-use`
+ rsStr := gstr.CaseKebabScreaming(str)
+ fmt.Println(rsStr)
+
+ // Output:
+ // GOFRAME-IS-VERY-NICE-TO-USE
+}
+
+func ExampleCaseSnake() {
+ var str string
+ str = `goframe_is Very Nice.to-use`
+ rsStr := gstr.CaseSnake(str)
+ fmt.Println(rsStr)
+
+ // Output:
+ // goframe_is_very_nice_to_use
+}
+
+func ExampleCaseSnakeFirstUpper() {
+ var str string
+ str = `GoframeIsVeryNiceToUse`
+ rsStr := gstr.CaseSnakeFirstUpper(str)
+ fmt.Println(rsStr)
+
+ // Output:
+ // goframe_is_very_nice_to_use
+}
+
+func ExampleCaseSnakeScreaming() {
+ var str string
+ str = `goframe_is Very Nice.to-use`
+ rsStr := gstr.CaseSnakeScreaming(str)
+ fmt.Println(rsStr)
+
+ // Output:
+ // GOFRAME_IS_VERY_NICE_TO_USE
+}
+
+func ExampleChr() {
+ var ascii int
+ ascii = 65
+ rsStr := gstr.Chr(ascii)
+ fmt.Println(rsStr)
+
+ // Output:
+ // A
+}
+
+func ExampleChunkSplit() {
+ var body string
+ var chunkLen int
+ var end string
+ body = `1234`
+ chunkLen = 2
+ end = "#"
+ rsStr := gstr.ChunkSplit(body, chunkLen, end)
+ fmt.Println(rsStr)
+
+ body = `我爱Goframe`
+ chunkLen = 1
+ end = "-"
+ rsStr = gstr.ChunkSplit(body, chunkLen, end)
+ fmt.Println(rsStr)
+
+ body = `1234`
+ chunkLen = 1
+ end = ""
+ rsStr = gstr.ChunkSplit(body, chunkLen, end)
+ fmt.Println(rsStr)
+
+ // May Output:
+ // 12#34#
+ // 我-爱-G-o-f-r-a-m-e-
+ // "1\r\n2\r\n3\r\n4\r\n"
+}
+
+func ExampleCompare() {
+ var a string
+ var b string
+
+ a = "C"
+ b = "C"
+ rsStr := gstr.Compare(a, b)
+ fmt.Println(rsStr)
+
+ a = "A"
+ b = "B"
+ rsStr = gstr.Compare(a, b)
+ fmt.Println(rsStr)
+
+ a = "C"
+ b = "B"
+ rsStr = gstr.Compare(a, b)
+ fmt.Println(rsStr)
+
+ // Output:
+ // 0
+ // -1
+ // 1
+}
+
+func ExampleCompareVersion() {
+ var a string
+ var b string
+
+ a = "v2.11.9"
+ b = "v2.10.8"
+
+ rsStr := gstr.CompareVersion(a, b)
+ fmt.Println(rsStr)
+
+ a = "A.10.8"
+ b = "A.19.7"
+ rsStr = gstr.CompareVersion(a, b)
+ fmt.Println(rsStr)
+
+ a = "2.8.beta"
+ b = "2.8"
+ rsStr = gstr.CompareVersion(a, b)
+ fmt.Println(rsStr)
+
+ // Output:
+ // 1
+ // -1
+ // 0
+}
+
+func ExampleCompareVersionGo() {
+ var a string
+ var b string
+
+ a = "v2.11.9"
+ b = "v2.10.8"
+ rsStr := gstr.CompareVersionGo(a, b)
+ fmt.Println(rsStr)
+
+ a = "v0.0.2-20180626092158-b2ccc119800e"
+ b = "v1.0.1-20190626092158-b2ccc519800e"
+ rsStr = gstr.CompareVersionGo(a, b)
+ fmt.Println(rsStr)
+
+ a = "v4.20.1"
+ b = "v4.20.1+incompatible"
+ rsStr = gstr.CompareVersionGo(a, b)
+ fmt.Println(rsStr)
+
+ // Output:
+ // 1
+ // -1
+ // 0
+}
+
+func ExampleContains() {
+ var str, substr string
+ str = `goframe_is Very Nice.to-use`
+ substr = `goframe`
+ rsStr := gstr.Contains(str, substr)
+ fmt.Println(rsStr)
+
+ substr = `Goframe`
+ rsStr = gstr.Contains(str, substr)
+ fmt.Println(rsStr)
+
+ // Output:
+ // true
+ // false
+}
+
+func ExampleContainsAny() {
+ var s, chars string
+ s = `goframe_is Very Nice.to-use`
+ chars = "g"
+ rsStr := gstr.ContainsAny(s, chars)
+ fmt.Println(rsStr)
+
+ chars = "G"
+ rsStr = gstr.ContainsAny(s, chars)
+ fmt.Println(rsStr)
+
+ chars = "Nice"
+ rsStr = gstr.ContainsAny(s, chars)
+ fmt.Println(rsStr)
+
+ // Output:
+ // true
+ // false
+ // true
+}
+
+func ExampleContainsI() {
+ var str, substr string
+ str = `goframe_is Very Nice.to-use`
+
+ substr = "go"
+ rsStr := gstr.ContainsI(str, substr)
+ fmt.Println(rsStr)
+
+ substr = "Go"
+ rsStr = gstr.ContainsI(str, substr)
+ fmt.Println(rsStr)
+
+ substr = "Golang"
+ rsStr = gstr.ContainsI(str, substr)
+ fmt.Println(rsStr)
+
+ // Output:
+ // true
+ // true
+ // false
+}
+
+func ExampleCount() {
+ var str, substr string
+ str = `goframe_is Very Nice.to-use`
+
+ substr = "goframe"
+ rsStr := gstr.Count(str, substr)
+ fmt.Println(rsStr)
+
+ substr = "golang"
+ rsStr = gstr.Count(str, substr)
+ fmt.Println(rsStr)
+
+ // Output:
+ // 1
+ // 0
+}
+
+func ExampleCountChars() {
+ var str string
+ var noSpace bool
+ str = `goframe_is Very Nice.to-use`
+
+ rsStr := gstr.CountChars(str)
+ fmt.Println(rsStr)
+
+ noSpace = true
+ rsStr = gstr.CountChars(str, noSpace)
+ fmt.Println(rsStr)
+
+ // Output:
+ // map[ :2 -:1 .:1 N:1 V:1 _:1 a:1 c:1 e:4 f:1 g:1 i:2 m:1 o:2 r:2 s:2 t:1 u:1 y:1]
+ // map[-:1 .:1 N:1 V:1 _:1 a:1 c:1 e:4 f:1 g:1 i:2 m:1 o:2 r:2 s:2 t:1 u:1 y:1]
+}
+
+func ExampleCountI() {
+ var s, substr string
+ s = `goframe_is Very Nice.to-use`
+
+ substr = "goframe"
+ rsStr := gstr.CountI(s, substr)
+ fmt.Println(rsStr)
+
+ substr = "golang"
+ rsStr = gstr.CountI(s, substr)
+ fmt.Println(rsStr)
+
+ // Output:
+ // 1
+ // 0
+}
+
+func ExampleCountWords() {
+ var str string
+ str = `goframe is Very Nice to use ! goframe Very Nice !`
+ rsStr := gstr.CountWords(str)
+ fmt.Println(rsStr)
+
+ // Output:
+ // map[!:2 Nice:2 Very:2 goframe:2 is:1 to:1 use:1]
+}
+
+func ExampleEqual() {
+ var a, b string
+ a = `A`
+ b = `a`
+ rsStr := gstr.Equal(a, b)
+ fmt.Println(rsStr)
+
+ a = `A`
+ b = `B`
+ rsStr = gstr.Equal(a, b)
+ fmt.Println(rsStr)
+
+ a = `C`
+ b = `B`
+ rsStr = gstr.Equal(a, b)
+ fmt.Println(rsStr)
+
+ // Output:
+ // true
+ // false
+ // false
+}
+
+func ExampleExplode() {
+ var delimiter, str string
+ str = `goframe_is_Very_Nice_to_use`
+ delimiter = "_"
+ rsStr := gstr.Explode(delimiter, str)
+ fmt.Println(rsStr)
+
+ // Output:
+ // [goframe is Very Nice to use]
+}
+
+func ExampleFields() {
+ var str string
+ str = `goframe is Very Nice to-use`
+ rsStr := gstr.Fields(str)
+ fmt.Println(rsStr)
+
+ // Output:
+ // [goframe is Very Nice to-use]
+}
+
+func ExampleHasPrefix() {
+ var s, prefix string
+ s = `goframe_is Very Nice.to-use`
+
+ prefix = "goframe"
+ rsStr := gstr.HasPrefix(s, prefix)
+ fmt.Println(rsStr)
+
+ prefix = "Goframe"
+ rsStr = gstr.HasPrefix(s, prefix)
+ fmt.Println(rsStr)
+
+ // Output:
+ // true
+ // false
+}
+
+func ExampleHasSuffix() {
+ var s, prefix string
+ s = `goframe_is Very Nice.to-use`
+
+ prefix = "use"
+ rsStr := gstr.HasSuffix(s, prefix)
+ fmt.Println(rsStr)
+
+ prefix = "Use"
+ rsStr = gstr.HasSuffix(s, prefix)
+ fmt.Println(rsStr)
+
+ // Output:
+ // true
+ // false
+}
+
+func ExampleHideStr() {
+ var str string
+ var percent int
+ var hide string
+
+ str = `1234567890`
+ percent = 30
+ hide = `@`
+ rsStr := gstr.HideStr(str, percent, hide)
+ fmt.Println(rsStr)
+
+ str = `AAAAAAAAAA`
+ percent = 60
+ hide = `@`
+ rsStr = gstr.HideStr(str, percent, hide)
+ fmt.Println(rsStr)
+
+ str = `ABCDEFGHIJ`
+ percent = 10
+ hide = `@`
+ rsStr = gstr.HideStr(str, percent, hide)
+ fmt.Println(rsStr)
+
+ // Output:
+ // 1234@@@890
+ // AA@@@@@@AA
+ // ABCDE@GHIJ
+}
+
+func ExampleImplode() {
+ var glue string
+ var pieces []string
+ pieces = []string{"goframe", "is", "Very", "Nice", "to", "use"}
+ glue = "-"
+ rsStr := gstr.Implode(glue, pieces)
+ fmt.Println(rsStr)
+
+ // Output:
+ // goframe-is-Very-Nice-to-use
+}
+
+func ExampleInArray() {
+ var a []string
+ var s string
+ a = []string{"goframe", "is", "Very", "Nice", "to", "use"}
+ s = "goframe"
+ rsStr := gstr.InArray(a, s)
+ fmt.Println(rsStr)
+
+ s = "golang"
+ rsStr = gstr.InArray(a, s)
+ fmt.Println(rsStr)
+
+ // Output:
+ // true
+ // false
+}
+
+func ExampleIsLetterLower() {
+ var b byte
+ b = 65 // In ASCII is "a"
+ rsStr := gstr.IsLetterLower(b)
+ fmt.Println(rsStr)
+
+ b = 97 // In ASCII is "A"
+ rsStr = gstr.IsLetterLower(b)
+ fmt.Println(rsStr)
+
+ // Output:
+ // false
+ // true
+}
+
+func ExampleIsLetterUpper() {
+ var b byte
+ b = 65 // In ASCII is "a"
+ rsStr := gstr.IsLetterUpper(b)
+ fmt.Println(rsStr)
+
+ b = 97 // In ASCII is "A"
+ rsStr = gstr.IsLetterUpper(b)
+ fmt.Println(rsStr)
+
+ // Output:
+ // true
+ // false
+}
+
+func ExampleIsNumeric() {
+ var s string
+
+ s = "88"
+ rsStr := gstr.IsNumeric(s)
+ fmt.Println(rsStr)
+
+ s = "aa66bb88"
+ rsStr = gstr.IsNumeric(s)
+ fmt.Println(rsStr)
+
+ // Output:
+ // true
+ // false
+}
+
+func ExampleIsSubDomain() {
+ var subDomain, mainDomain string
+
+ subDomain = `s.goframe.org`
+ mainDomain = `goframe.org`
+ rsStr := gstr.IsSubDomain(subDomain, mainDomain)
+ fmt.Println(rsStr)
+
+ subDomain = `s.s.goframe.org`
+ mainDomain = `goframe.org`
+ rsStr = gstr.IsSubDomain(subDomain, mainDomain)
+ fmt.Println(rsStr)
+
+ subDomain = `s.s.goframe.org`
+ mainDomain = `*goframe.org`
+ rsStr = gstr.IsSubDomain(subDomain, mainDomain)
+ fmt.Println(rsStr)
+
+ // Output:
+ // true
+ // true
+ // false
+}
+
+func ExampleJoin() {
+ var array []string
+ var sep string
+
+ array = []string{"goframe", "is", "Very", "Nice", "to", "use"}
+ sep = `,`
+ rsStr := gstr.Join(array, sep)
+ fmt.Println(rsStr)
+
+ // Output:
+ // goframe,is,Very,Nice,to,use
+}
+
+func ExampleJoinAny() {
+ var sep string
+
+ sep = `@`
+ arr1 := []string{"goframe", "is", "Very", "Nice", "to", "use"}
+ rsStr := gstr.JoinAny(arr1, sep)
+ fmt.Println(rsStr)
+
+ sep = `|`
+ type StructA struct {
+ Name string
+ Age int
+ }
+ arr2 := []StructA{
+ {"Mary", 18},
+ {"Jack", 18},
+ {"Lucy", 18},
+ }
+ rsStr = gstr.JoinAny(arr2, sep)
+ fmt.Println(rsStr)
+
+ // Output:
+ // goframe@is@Very@Nice@to@use
+ // {"Name":"Mary","Age":18}|{"Name":"Jack","Age":18}|{"Name":"Lucy","Age":18}
+}
+
+func ExampleLcFirst() {
+ var str string
+ str = `Goframe`
+ rsStr := gstr.LcFirst(str)
+ fmt.Println(rsStr)
+
+ str = `Goframe is Very Nice to use.`
+ rsStr = gstr.LcFirst(str)
+ fmt.Println(rsStr)
+
+ // Output:
+ // goframe
+ // goframe is Very Nice to use.
+}
+
+func ExampleLenRune() {
+ var str string
+ str = `goframe is Very Nice to use`
+ rsStr := gstr.LenRune(str)
+ fmt.Println(rsStr)
+
+ str = `123 4567 890`
+ rsStr = gstr.LenRune(str)
+ fmt.Println(rsStr)
+
+ // Output:
+ // 27
+ // 12
+}
+
+func ExampleLevenshtein() {
+ var str1, str2 string
+ var costIns, costRep, costDel int
+ str1 = "Hello World"
+ str2 = "ello World"
+
+ costIns = 1
+ costRep = 1
+ costDel = 1
+ rsStr := gstr.Levenshtein(str1, str2, costIns, costRep, costDel)
+ fmt.Println(rsStr)
+
+ str1 = "Hello World"
+ str2 = "ello Worles"
+ costIns = 10
+ costRep = 20
+ costDel = 30
+ rsStr = gstr.Levenshtein(str1, str2, costIns, costRep, costDel)
+ fmt.Println(rsStr)
+
+ // Output:
+ // 1
+ // 60
+}
+
+func ExampleNl2Br() {
+ var str string
+ str = `goframe
+is
+Very
+Nice
+to
+use`
+ rsStr := gstr.Nl2Br(str)
+ fmt.Println(rsStr)
+
+ // Output:
+ // goframe
is
Very
Nice
to
use
+}
+
+func ExampleNumberFormat() {
+ var number float64
+ var decimals int
+ var decPoint string
+ var thousandsSep string
+
+ number = 123456
+ decimals = 2
+ decPoint = "."
+ thousandsSep = ","
+ rsStr := gstr.NumberFormat(number, decimals, decPoint, thousandsSep)
+ fmt.Println(rsStr)
+
+ number = 1234.56
+ decimals = 1
+ decPoint = ","
+ thousandsSep = " "
+ rsStr = gstr.NumberFormat(number, decimals, decPoint, thousandsSep)
+ fmt.Println(rsStr)
+
+ number = 1234.5678
+ decimals = 3
+ decPoint = "."
+ thousandsSep = ","
+ rsStr = gstr.NumberFormat(number, decimals, decPoint, thousandsSep)
+ fmt.Println(rsStr)
+
+ // Output:
+ // 123,456.00
+ // 1 234,6
+ // 1,234.568
+}
+
+func ExampleOctStr() {
+ var str string
+ str = `\346\200\241`
+ rsStr := gstr.OctStr(str)
+ fmt.Println(rsStr)
+
+ // Output:
+ // 怡
+}
+
+func ExampleOrd() {
+ var str string
+ str = `goframe`
+ rsStr := gstr.Ord(str)
+ fmt.Println(rsStr)
+
+ // Output:
+ // 103
+}
+
+func ExampleParse() {
+ var str string
+
+ str = `v1=m&v2=n`
+ rsStr, _ := gstr.Parse(str)
+ fmt.Println(rsStr)
+
+ str = `v[a][a]=m&v[a][b]=n`
+ rsStr, _ = gstr.Parse(str)
+ fmt.Println(rsStr)
+
+ // 目前不支持嵌套切片。
+ str = `v[][]=m&v[][]=n`
+ rsStr, err := gstr.Parse(str)
+ if err != nil {
+ fmt.Println("Error:", err)
+ }
+ fmt.Println(rsStr)
+
+ // 会产生错误
+ str = `v=m&v[a]=n`
+ rsStr, err = gstr.Parse(str)
+ if err != nil {
+ fmt.Println("Error:", err)
+ }
+ fmt.Println(rsStr)
+
+ str = `a .[[b=c`
+ rsStr, _ = gstr.Parse(str)
+ fmt.Println(rsStr)
+
+ // Output:
+ // map[v1:m v2:n]
+ // map[v:map[a:map[a:m b:n]]]
+ // map[v:map[]]
+ // Error: expected type 'map[string]interface{}' for key 'v', but got 'string'
+ // map[]
+ // map[a___[b:c]
+}
+
+func ExamplePos() {
+ var haystack, needle string
+ var startOffset int
+
+ haystack = `goframe_is Very Nice.to-use`
+ needle = `Nice`
+ rsStr := gstr.Pos(haystack, needle)
+ fmt.Println(rsStr)
+
+ startOffset = 16
+ rsStr = gstr.Pos(haystack, needle, startOffset)
+ fmt.Println(rsStr)
+
+ startOffset = 17
+ rsStr = gstr.Pos(haystack, needle, startOffset)
+ fmt.Println(rsStr)
+
+ needle = `nice`
+ rsStr = gstr.Pos(haystack, needle)
+ fmt.Println(rsStr)
+
+ // Output:
+ // 16
+ // 16
+ // -1
+ // -1
+}
+
+func ExamplePosI() {
+ var haystack, needle string
+ var startOffset int
+
+ haystack = `goframe_is Very Nice.to-use`
+ needle = `Nice`
+ rsStr := gstr.PosI(haystack, needle)
+ fmt.Println(rsStr)
+
+ startOffset = 16
+ rsStr = gstr.PosI(haystack, needle, startOffset)
+ fmt.Println(rsStr)
+
+ startOffset = 17
+ rsStr = gstr.PosI(haystack, needle, startOffset)
+ fmt.Println(rsStr)
+
+ needle = `nice`
+ rsStr = gstr.PosI(haystack, needle)
+ fmt.Println(rsStr)
+
+ // Output:
+ // 16
+ // 16
+ // -1
+ // 16
+}
+
+func ExamplePosIRune() {
+ var haystack, needle string
+ var startOffset int
+
+ haystack = `goframe_is Very Nice.to-use`
+ needle = `Nice`
+ rsStr := gstr.PosIRune(haystack, needle)
+ fmt.Println(rsStr)
+
+ startOffset = 16
+ rsStr = gstr.PosIRune(haystack, needle, startOffset)
+ fmt.Println(rsStr)
+
+ startOffset = 17
+ rsStr = gstr.PosIRune(haystack, needle, startOffset)
+ fmt.Println(rsStr)
+
+ needle = `nice`
+ rsStr = gstr.PosIRune(haystack, needle)
+ fmt.Println(rsStr)
+
+ // Output:
+ // 16
+ // 16
+ // -1
+ // 16
+}
+
+func ExamplePosR() {
+ var haystack, needle string
+ var startOffset int
+
+ haystack = `goframe_is Very Nice.to-use`
+ needle = `Nice`
+ rsStr := gstr.PosR(haystack, needle)
+ fmt.Println(rsStr)
+
+ startOffset = 16
+ rsStr = gstr.PosR(haystack, needle, startOffset)
+ fmt.Println(rsStr)
+
+ startOffset = 17
+ rsStr = gstr.PosR(haystack, needle, startOffset)
+ fmt.Println(rsStr)
+
+ needle = `nice`
+ rsStr = gstr.PosR(haystack, needle)
+ fmt.Println(rsStr)
+
+ // Output:
+ // 16
+ // 16
+ // -1
+ // -1
+}
+
+func ExamplePosRI() {
+ var haystack, needle string
+ var startOffset int
+
+ haystack = `goframe_is Very Nice.to-use`
+ needle = `Nice`
+ rsStr := gstr.PosRI(haystack, needle)
+ fmt.Println(rsStr)
+
+ startOffset = 16
+ rsStr = gstr.PosRI(haystack, needle, startOffset)
+ fmt.Println(rsStr)
+
+ startOffset = 17
+ rsStr = gstr.PosRI(haystack, needle, startOffset)
+ fmt.Println(rsStr)
+
+ needle = `nice`
+ rsStr = gstr.PosRI(haystack, needle)
+ fmt.Println(rsStr)
+
+ // Output:
+ // 16
+ // 16
+ // -1
+ // 16
+
+}
+
+func ExamplePosRIRune() {
+ var haystack, needle string
+ var startOffset int
+
+ haystack = `goframe_is Very Nice.to-use`
+ needle = `Nice`
+ rsStr := gstr.PosRIRune(haystack, needle)
+ fmt.Println(rsStr)
+
+ startOffset = 16
+ rsStr = gstr.PosRIRune(haystack, needle, startOffset)
+ fmt.Println(rsStr)
+
+ startOffset = 17
+ rsStr = gstr.PosRIRune(haystack, needle, startOffset)
+ fmt.Println(rsStr)
+
+ needle = `nice`
+ rsStr = gstr.PosRIRune(haystack, needle)
+ fmt.Println(rsStr)
+
+ // Output:
+ // 16
+ // 16
+ // -1
+ // 16
+}
+
+func ExamplePosRRune() {
+ var haystack, needle string
+ var startOffset int
+
+ haystack = `goframe_is Very Nice.to-use`
+ needle = `Nice`
+ rsStr := gstr.PosRRune(haystack, needle)
+ fmt.Println(rsStr)
+
+ startOffset = 16
+ rsStr = gstr.PosRRune(haystack, needle, startOffset)
+ fmt.Println(rsStr)
+
+ startOffset = 17
+ rsStr = gstr.PosRRune(haystack, needle, startOffset)
+ fmt.Println(rsStr)
+
+ needle = `nice`
+ rsStr = gstr.PosRRune(haystack, needle)
+ fmt.Println(rsStr)
+
+ // Output:
+ // 16
+ // 16
+ // -1
+ // -1
+}
+
+func ExamplePosRune() {
+ var haystack, needle string
+ var startOffset int
+
+ haystack = `goframe_is Very Nice.to-use`
+ needle = `Nice`
+ rsStr := gstr.PosRune(haystack, needle)
+ fmt.Println(rsStr)
+
+ startOffset = 16
+ rsStr = gstr.PosRune(haystack, needle, startOffset)
+ fmt.Println(rsStr)
+
+ startOffset = 17
+ rsStr = gstr.PosRune(haystack, needle, startOffset)
+ fmt.Println(rsStr)
+
+ needle = `nice`
+ rsStr = gstr.PosRune(haystack, needle)
+ fmt.Println(rsStr)
+
+ // Output:
+ // 16
+ // 16
+ // -1
+ // -1
+}
+
+func ExampleQuoteMeta() {
+ var str string
+ str = `.\+?[^]()`
+ rsStr := gstr.QuoteMeta(str)
+ fmt.Println(rsStr)
+
+ // Output:
+ // \.\\\+\?\[\^\]\(\)
+
+}
+
+func ExampleRepeat() {
+ var input string
+ var multiplier int
+ input = `goframe `
+ multiplier = 3
+ rsStr := gstr.Repeat(input, multiplier)
+ fmt.Println(rsStr)
+
+ // Output:
+ // goframe goframe goframe
+}
+
+func ExampleReplace() {
+ var origin, search, replace string
+ var count int
+
+ origin = `goframe_is_Very_Nice_to_use!`
+ search = `_`
+ replace = `+`
+ rsStr := gstr.Replace(origin, search, replace)
+ fmt.Println(rsStr)
+
+ count = 2
+ rsStr = gstr.Replace(origin, search, replace, count)
+ fmt.Println(rsStr)
+
+ // Output:
+ // goframe+is+Very+Nice+to+use!
+ // goframe+is+Very_Nice_to_use!
+}
+
+func ExampleReplaceByArray() {
+ var origin string
+ var array []string
+
+ origin = `Golang is Very Good`
+
+ array = []string{"o", "O"}
+ rsStr := gstr.ReplaceByArray(origin, array)
+ fmt.Println(rsStr)
+
+ array = []string{"Golang", "Goframe", "Good", "Nice"}
+ rsStr = gstr.ReplaceByArray(origin, array)
+ fmt.Println(rsStr)
+
+ // Output:
+ // GOlang is Very GOOd
+ // Goframe is Very Nice
+}
+
+func ExampleReplaceByMap() {
+ var origin string
+ var replaces map[string]string
+
+ origin = `Golang is Very Good`
+
+ replaces = map[string]string{
+ "Golang": "Goframe",
+ "Good": "Nice",
+ }
+ rsStr := gstr.ReplaceByMap(origin, replaces)
+ fmt.Println(rsStr)
+
+ replaces = map[string]string{
+ "golang": "Goframe",
+ "good": "Nice",
+ }
+ rsStr = gstr.ReplaceByMap(origin, replaces)
+ fmt.Println(rsStr)
+
+ // Output:
+ // Goframe is Very Nice
+ // Golang is Very Good
+}
+
+func ExampleReplaceI() {
+ var origin, search, replace string
+ var count int
+ origin = `goframe_is Very Nice.to-use`
+ search = `goframe`
+ replace = `golang`
+ count = 3
+ rsStr := gstr.ReplaceI(origin, search, replace, count)
+ fmt.Println(rsStr)
+
+ // Output:
+ //
+}
+
+func ExampleReplaceIByArray() {
+ var origin string
+ var replaces []string
+ replaces = []string{
+ "frame",
+ "lang",
+ "nice",
+ "goframe",
+ }
+ origin = `goframe Nice`
+ rsStr := gstr.ReplaceIByArray(origin, replaces)
+ fmt.Println(rsStr)
+
+ // Output:
+ // golang goframe
+}
+
+func ExampleReplaceIByMap() {
+ var origin string
+ var replaces map[string]string
+
+ origin = `Golang is Very Good`
+
+ replaces = map[string]string{
+ "Golang": "Goframe",
+ "Good": "Nice",
+ }
+ rsStr := gstr.ReplaceIByMap(origin, replaces)
+ fmt.Println(rsStr)
+
+ replaces = map[string]string{
+ "golang": "Goframe",
+ "good": "Nice",
+ }
+ rsStr = gstr.ReplaceIByMap(origin, replaces)
+ fmt.Println(rsStr)
+
+ // Output:
+ // Goframe is Very Nice
+ // Goframe is Very Nice
+}
+
+func ExampleReverse() {
+ var str string
+ str = `Goframe-Nice`
+ rsStr := gstr.Reverse(str)
+ fmt.Println(rsStr)
+
+ // Output:
+ // eciN-emarfoG
+}
+
+func ExampleSearchArray() {
+ var a []string
+ var s string
+ a = []string{
+ "goframe",
+ "is",
+ "Very",
+ "Nice",
+ }
+ s = `goframe`
+ rsStr := gstr.SearchArray(a, s)
+ fmt.Println(rsStr)
+
+ s = `Very`
+ rsStr = gstr.SearchArray(a, s)
+ fmt.Println(rsStr)
+
+ s = `use`
+ rsStr = gstr.SearchArray(a, s)
+ fmt.Println(rsStr)
+
+ // Output:
+ // 0
+ // 2
+ // -1
+}
+
+func ExampleShuffle() {
+ var str string
+ str = `goframe_is Nice.`
+ rsStr := gstr.Shuffle(str)
+ fmt.Println(rsStr)
+
+ // Output:
+ // frg.omeie sa_cNi
+}
+
+func ExampleSimilarText() {
+ var first, second string
+ var percent *float64
+ first = `goframe_is`
+ second = `go-nice`
+ rsStr := gstr.SimilarText(first, second, percent)
+ fmt.Println(rsStr)
+
+ // Output:
+ // 3
+}
+
+func ExampleSoundex() {
+ var str string
+ var str2 string
+ str = `Euler`
+ str2 = `Ellery`
+ rsStr := gstr.Soundex(str)
+ rsStr2 := gstr.Soundex(str2)
+ fmt.Println(rsStr, rsStr2)
+
+ str = `Gauss`
+ str2 = `Ghosh`
+ rsStr = gstr.Soundex(str)
+ rsStr2 = gstr.Soundex(str2)
+ fmt.Println(rsStr, rsStr2)
+
+ str = `Lloyd`
+ str2 = `Ladd`
+ rsStr = gstr.Soundex(str)
+ rsStr2 = gstr.Soundex(str2)
+ fmt.Println(rsStr, rsStr2)
+
+ // Output:
+ // E406 E406
+ // G020 G020
+ // L030 L030
+}
+
+func ExampleSplit() {
+ var str, delimiter string
+ str = `GoFrame_Nice`
+ delimiter = `ame_N`
+ rsStr := gstr.Split(str, delimiter)
+ fmt.Println(rsStr)
+
+ // Output:
+ // [GoFr ice]
+}
+
+func ExampleSplitAndTrim() {
+ var str, delimiter, characterMask string
+ str = ` goframe, is, Very ,Nice ,to, use`
+ delimiter = `,`
+ characterMask = ` `
+ rsStr := gstr.SplitAndTrim(str, delimiter, characterMask)
+ fmt.Println(rsStr)
+
+ // Output:
+ // [goframe is Very Nice to use]
+}
+
+func ExampleStr() {
+ var haystack, needle string
+ haystack = `goframe nice`
+ needle = `fram`
+ rsStr := gstr.Str(haystack, needle)
+ fmt.Println(rsStr)
+
+ needle = `ame n`
+ rsStr = gstr.Str(haystack, needle)
+ fmt.Println(rsStr)
+
+ // Output:
+ // me nice
+ // nice
+}
+
+func ExampleStrEx() {
+ var haystack, needle string
+ haystack = `goframe_is Very Nice.to-use`
+ needle = `goframe`
+ rsStr := gstr.StrEx(haystack, needle)
+ fmt.Println(rsStr)
+
+ // Output:
+ // _is Very Nice.to-use
+}
+
+func ExampleStrLimit() {
+ var str, suffix string
+ var length int
+ str = `goframe_is Very Nice.to-use`
+ length = 8
+ suffix = "suffix"
+ rsStr := gstr.StrLimit(str, length, suffix)
+ fmt.Println(rsStr)
+
+ // Output:
+ // goframe_suffix
+}
+
+func ExampleStrLimitRune() {
+ var str, suffix string
+ var length int
+ str = `goframe_is Very Nice.to-use`
+ length = 7
+ suffix = "suffix"
+ rsStr := gstr.StrLimitRune(str, length, suffix)
+ fmt.Println(rsStr)
+
+ // Output:
+ // goframesuffix
+}
+
+func ExampleStrTill() {
+ var haystack, needle string
+
+ haystack = `ABCDEFGHIJKLMN`
+ needle = `C`
+ rsStr := gstr.StrTill(haystack, needle)
+ fmt.Println(rsStr)
+
+ needle = `E`
+ rsStr = gstr.StrTill(haystack, needle)
+ fmt.Println(rsStr)
+
+ needle = `G`
+ rsStr = gstr.StrTill(haystack, needle)
+ fmt.Println(rsStr)
+
+ // Output:
+ // ABC
+ // ABCDE
+ // ABCDEFG
+}
+
+func ExampleStrTillEx() {
+ var haystack, needle string
+ haystack = `goframe_is Very Nice.to-use`
+ needle = `frame`
+ rsStr := gstr.StrTillEx(haystack, needle)
+ fmt.Println(rsStr)
+
+ haystack = `goframe_is Very Nice.to-use`
+ needle = `to`
+ rsStr = gstr.StrTillEx(haystack, needle)
+ fmt.Println(rsStr)
+
+ // Output:
+ // go
+ // goframe_is Very Nice.
+}
+
+func ExampleStripSlashes() {
+ var str string
+ str = `goframe "is" Very Nice to use`
+ rsStr := gstr.StripSlashes(str)
+ fmt.Println(rsStr)
+
+ // Output:
+ //
+}
+
+func ExampleSubStr() {
+ var str string
+ var start, length int
+ str = `GoFrame Nice`
+ start = 0
+ length = 2
+ subStr := gstr.SubStr(str, start, length)
+ fmt.Println(subStr)
+
+ str = `GoFrame Nice`
+ start = 5
+ length = 6
+ subStr = gstr.SubStr(str, start, length)
+ fmt.Println(subStr)
+
+ // Output:
+ // Go
+ // me Nic
+}
+
+func ExampleSubStrRune() {
+ var str string
+ var start, length int
+ str = `GoFrame Nice`
+ start = 5
+ length = 4
+ subStr := gstr.SubStrRune(str, start, length)
+ fmt.Println(subStr)
+
+ // Output:
+ // me N
+}
+
+func ExampleToLower() {
+ var s string
+ s = `GoFRAME_IS VERY NICE.TO-USE`
+ rsStr := gstr.ToLower(s)
+ fmt.Println(rsStr)
+
+ // Output:
+ // goframe_is very nice.to-use
+}
+
+func ExampleToUpper() {
+ var s string
+ s = `goframe_is Very Nice.to-use`
+ rsStr := gstr.ToUpper(s)
+ fmt.Println(rsStr)
+
+ // Output:
+ // GOFRAME_IS VERY NICE.TO-USE
+}
+
+func ExampleTrim() {
+ var str, characterMask string
+ str = `goframe_is Very Nice.to-use`
+ characterMask = "to-use"
+ rsStr := gstr.Trim(str, characterMask)
+ fmt.Println(rsStr)
+
+ // Output:
+ // goframe_is Very Nice.
+}
+
+func ExampleTrimAll() {
+ var str, characterMask string
+ str = `goframe`
+ characterMask = "g o e"
+ rsStr := gstr.TrimAll(str, characterMask)
+ fmt.Println(rsStr)
+
+ // Output:
+ // fram
+}
+
+func ExampleTrimLeft() {
+ var str, characterMask string
+ str = ` goframe is Very Nice to use`
+ characterMask = "goframeisVery"
+ rsStr := gstr.TrimLeft(str, characterMask)
+ fmt.Println(rsStr)
+
+ // Output:
+ // Nice to use
+}
+
+func ExampleTrimLeftStr() {
+ var str, cut string
+ var count int
+ str = ` goframe is Very Nice.to-use`
+ cut = " go"
+ count = 1
+ rsStr := gstr.TrimLeftStr(str, cut, count)
+ fmt.Println(rsStr)
+
+ // Output:
+ // frame is Very Nice.to-use
+}
+
+func ExampleTrimRight() {
+ var str, characterMask string
+ str = `goframe_is Very Nice to use `
+ rsStr := gstr.TrimRight(str)
+ fmt.Println(rsStr)
+
+ str = `goframe_is Very Nice to-use `
+ characterMask = "to-use" // []byte{"t", "o", "-", "u", "s", "e"}
+ rsStr = gstr.TrimRight(str, characterMask)
+ fmt.Println(rsStr)
+
+ // Output:
+ // goframe_is Very Nice to use
+ // goframe_is Very Nic
+}
+
+func ExampleTrimRightStr() {
+ var str, cut string
+ var count int
+ str = `aaa,bbb,ccc,ddd,eee,`
+ cut = ","
+ count = 1
+ rsStr := gstr.TrimRightStr(str, cut, count)
+ fmt.Println(rsStr)
+
+ str = `aaa,bbb,ccc,ddd,eee,,,,,`
+ cut = ","
+ count = -1
+ rsStr = gstr.TrimRightStr(str, cut, count)
+ fmt.Println(rsStr)
+
+ str = `aaa,bbb,ccc,ddd,eee,,,,, `
+ cut = ","
+ count = -1
+ rsStr = gstr.TrimRightStr(str, cut, count)
+ fmt.Println(rsStr)
+
+ // Output:
+ // aaa,bbb,ccc,ddd,eee
+ // aaa,bbb,ccc,ddd,eee
+ // aaa,bbb,ccc,ddd,eee,,,,,
+}
+
+func ExampleTrimStr() {
+ var str, cut string
+ var count int
+ str = `goframe is Very Nice to-use`
+ cut = "goframe"
+ rsStr := gstr.TrimStr(str, cut, count)
+ fmt.Println(rsStr)
+
+ cut = "use"
+ rsStr = gstr.TrimStr(str, cut, count)
+ fmt.Println(rsStr)
+
+ // Output:
+ // is Very Nice to-use
+ // goframe is Very Nice to-
+}
+
+func ExampleUcFirst() {
+ var s string
+ s = `goframe is very nice to use.`
+ rsStr := gstr.UcFirst(s)
+ fmt.Println(rsStr)
+
+ // Output:
+ // Goframe is very nice to use.
+}
+
+func ExampleUcWords() {
+ var str string
+ str = `goframe is very nice to use.`
+ rsStr := gstr.UcWords(str)
+ fmt.Println(rsStr)
+
+ // Output:
+ // Goframe Is Very Nice To Use.
+}
+
+func ExampleWordWrap() {
+ var str, br string
+ var width int
+ str = `A very long woooooooooooooooooord. and something`
+ width = 8
+ br = "\n"
+ rsStr := gstr.WordWrap(str, width, br)
+ fmt.Println(rsStr)
+
+ str = `The quick brown fox jumped over the lazy dog.`
+ width = 20
+ br = "
\n"
+ rsStr = gstr.WordWrap(str, width, br)
+ fmt.Printf("%v", rsStr)
+
+ // Output:
+ // A very
+ // long
+ // woooooooooooooooooord.
+ // and
+ // something
+ // The quick brown fox
+ // jumped over the lazy
+ // dog.
+}
From c663a0d9c5df17fb83cb22c7c044117769580e72 Mon Sep 17 00:00:00 2001
From: iamyl <57165465@qq.com>
Date: Fri, 5 Nov 2021 10:20:36 +0800
Subject: [PATCH 02/17] =?UTF-8?q?=E4=BF=AE=E6=94=B9gstr=E6=B5=8B=E8=AF=95?=
=?UTF-8?q?=E7=94=A8=E4=BE=8B?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
修改gstr测试用例的错误
---
text/gstr/gstr_z_example_test.go | 8 ++++----
1 file changed, 4 insertions(+), 4 deletions(-)
diff --git a/text/gstr/gstr_z_example_test.go b/text/gstr/gstr_z_example_test.go
index 0bbfc8415..c083d0528 100644
--- a/text/gstr/gstr_z_example_test.go
+++ b/text/gstr/gstr_z_example_test.go
@@ -1076,7 +1076,7 @@ func ExampleReplaceI() {
fmt.Println(rsStr)
// Output:
- //
+ // golang_is Very Nice.to-use
}
func ExampleReplaceIByArray() {
@@ -1164,8 +1164,8 @@ func ExampleShuffle() {
rsStr := gstr.Shuffle(str)
fmt.Println(rsStr)
- // Output:
- // frg.omeie sa_cNi
+ // May Output:
+ // e giNomescraf._i
}
func ExampleSimilarText() {
@@ -1329,7 +1329,7 @@ func ExampleStripSlashes() {
fmt.Println(rsStr)
// Output:
- //
+ // goframe "is" Very Nice to use
}
func ExampleSubStr() {
From cffa0983733cd07f33190cedbcbb1be84d579d84 Mon Sep 17 00:00:00 2001
From: iamyl <57165465@qq.com>
Date: Fri, 5 Nov 2021 10:35:01 +0800
Subject: [PATCH 03/17] =?UTF-8?q?=E6=9B=B4=E6=96=B0gstr=E4=B8=BAgf-v2?=
=?UTF-8?q?=E7=89=88=E6=9C=AC?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
text/gstr/gstr_z_example_test.go | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/text/gstr/gstr_z_example_test.go b/text/gstr/gstr_z_example_test.go
index c083d0528..59d4db9f9 100644
--- a/text/gstr/gstr_z_example_test.go
+++ b/text/gstr/gstr_z_example_test.go
@@ -3,7 +3,7 @@ package gstr
import (
"fmt"
- "github.com/gogf/gf/text/gstr"
+ "github.com/gogf/gf/v2/text/gstr"
)
func ExampleAddSlashes() {
From 4539a9a4ab9c6b84a353930583b0f32eb0023680 Mon Sep 17 00:00:00 2001
From: iamyl <57165465@qq.com>
Date: Fri, 5 Nov 2021 10:42:44 +0800
Subject: [PATCH 04/17] =?UTF-8?q?=E4=BF=AE=E6=94=B9gstr=E6=B5=8B=E8=AF=95?=
=?UTF-8?q?=E7=94=A8=E4=BE=8B=E5=8C=85=E5=90=8D=E4=B8=BAgstr=5Ftest?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
text/gstr/gstr_z_example_test.go | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/text/gstr/gstr_z_example_test.go b/text/gstr/gstr_z_example_test.go
index 59d4db9f9..4a7cdd34d 100644
--- a/text/gstr/gstr_z_example_test.go
+++ b/text/gstr/gstr_z_example_test.go
@@ -1,8 +1,8 @@
-package gstr
+package gstr_test
import (
"fmt"
-
+
"github.com/gogf/gf/v2/text/gstr"
)
From a27eec77526f16ed05e50b599fb01fe3efe7a9c0 Mon Sep 17 00:00:00 2001
From: iamyl <57165465@qq.com>
Date: Fri, 5 Nov 2021 10:48:13 +0800
Subject: [PATCH 05/17] Delete gstr_z_example_test.go
---
text/gstr/gstr_z_example_test.go | 1538 ------------------------------
1 file changed, 1538 deletions(-)
delete mode 100644 text/gstr/gstr_z_example_test.go
diff --git a/text/gstr/gstr_z_example_test.go b/text/gstr/gstr_z_example_test.go
deleted file mode 100644
index 4a7cdd34d..000000000
--- a/text/gstr/gstr_z_example_test.go
+++ /dev/null
@@ -1,1538 +0,0 @@
-package gstr_test
-
-import (
- "fmt"
-
- "github.com/gogf/gf/v2/text/gstr"
-)
-
-func ExampleAddSlashes() {
- var str string
- str = `'aa'"bb"cc\r\n\d\t`
- rsStr := gstr.AddSlashes(str)
- fmt.Println(rsStr)
-
- // Output:
- // \'aa\'\"bb\"cc\\r\\n\\d\\t
-}
-
-func ExampleCaseCamel() {
- var str string
- str = `goframe_is very nice.to-use`
- rsStr := gstr.CaseCamel(str)
- fmt.Println(rsStr)
-
- // Output:
- // GoframeIsVeryNiceToUse
-}
-
-func ExampleCaseCamelLower() {
- var str string
- str = `goframe_is very nice.to-use`
- rsStr := gstr.CaseCamelLower(str)
- fmt.Println(rsStr)
-
- // Output:
- // goframeIsVeryNiceToUse
-}
-
-func ExampleCaseDelimited() {
- var str string
- var del uint8
- str = `goframe_is_very-nice.to-use`
- del = 35
- rsStr := gstr.CaseDelimited(str, del)
- fmt.Println(rsStr)
-
- // Output:
- // goframe#is#very#nice#to#use
-}
-
-func ExampleCaseDelimitedScreaming() {
- var str string
- var del uint8
- var screaming bool
- str = `goframe_is Very Nice.to-use`
- del = 35
- screaming = true
- rsStr := gstr.CaseDelimitedScreaming(str, del, screaming)
- fmt.Println(rsStr)
-
- // Output:
- // GOFRAME#IS#VERY#NICE#TO#USE
-}
-
-func ExampleCaseKebab() {
- var str string
- str = `goframe_is Very Nice.to-use`
- rsStr := gstr.CaseKebab(str)
- fmt.Println(rsStr)
-
- // Output:
- // goframe-is-very-nice-to-use
-}
-
-func ExampleCaseKebabScreaming() {
- var str string
- str = `goframe_is Very Nice.to-use`
- rsStr := gstr.CaseKebabScreaming(str)
- fmt.Println(rsStr)
-
- // Output:
- // GOFRAME-IS-VERY-NICE-TO-USE
-}
-
-func ExampleCaseSnake() {
- var str string
- str = `goframe_is Very Nice.to-use`
- rsStr := gstr.CaseSnake(str)
- fmt.Println(rsStr)
-
- // Output:
- // goframe_is_very_nice_to_use
-}
-
-func ExampleCaseSnakeFirstUpper() {
- var str string
- str = `GoframeIsVeryNiceToUse`
- rsStr := gstr.CaseSnakeFirstUpper(str)
- fmt.Println(rsStr)
-
- // Output:
- // goframe_is_very_nice_to_use
-}
-
-func ExampleCaseSnakeScreaming() {
- var str string
- str = `goframe_is Very Nice.to-use`
- rsStr := gstr.CaseSnakeScreaming(str)
- fmt.Println(rsStr)
-
- // Output:
- // GOFRAME_IS_VERY_NICE_TO_USE
-}
-
-func ExampleChr() {
- var ascii int
- ascii = 65
- rsStr := gstr.Chr(ascii)
- fmt.Println(rsStr)
-
- // Output:
- // A
-}
-
-func ExampleChunkSplit() {
- var body string
- var chunkLen int
- var end string
- body = `1234`
- chunkLen = 2
- end = "#"
- rsStr := gstr.ChunkSplit(body, chunkLen, end)
- fmt.Println(rsStr)
-
- body = `我爱Goframe`
- chunkLen = 1
- end = "-"
- rsStr = gstr.ChunkSplit(body, chunkLen, end)
- fmt.Println(rsStr)
-
- body = `1234`
- chunkLen = 1
- end = ""
- rsStr = gstr.ChunkSplit(body, chunkLen, end)
- fmt.Println(rsStr)
-
- // May Output:
- // 12#34#
- // 我-爱-G-o-f-r-a-m-e-
- // "1\r\n2\r\n3\r\n4\r\n"
-}
-
-func ExampleCompare() {
- var a string
- var b string
-
- a = "C"
- b = "C"
- rsStr := gstr.Compare(a, b)
- fmt.Println(rsStr)
-
- a = "A"
- b = "B"
- rsStr = gstr.Compare(a, b)
- fmt.Println(rsStr)
-
- a = "C"
- b = "B"
- rsStr = gstr.Compare(a, b)
- fmt.Println(rsStr)
-
- // Output:
- // 0
- // -1
- // 1
-}
-
-func ExampleCompareVersion() {
- var a string
- var b string
-
- a = "v2.11.9"
- b = "v2.10.8"
-
- rsStr := gstr.CompareVersion(a, b)
- fmt.Println(rsStr)
-
- a = "A.10.8"
- b = "A.19.7"
- rsStr = gstr.CompareVersion(a, b)
- fmt.Println(rsStr)
-
- a = "2.8.beta"
- b = "2.8"
- rsStr = gstr.CompareVersion(a, b)
- fmt.Println(rsStr)
-
- // Output:
- // 1
- // -1
- // 0
-}
-
-func ExampleCompareVersionGo() {
- var a string
- var b string
-
- a = "v2.11.9"
- b = "v2.10.8"
- rsStr := gstr.CompareVersionGo(a, b)
- fmt.Println(rsStr)
-
- a = "v0.0.2-20180626092158-b2ccc119800e"
- b = "v1.0.1-20190626092158-b2ccc519800e"
- rsStr = gstr.CompareVersionGo(a, b)
- fmt.Println(rsStr)
-
- a = "v4.20.1"
- b = "v4.20.1+incompatible"
- rsStr = gstr.CompareVersionGo(a, b)
- fmt.Println(rsStr)
-
- // Output:
- // 1
- // -1
- // 0
-}
-
-func ExampleContains() {
- var str, substr string
- str = `goframe_is Very Nice.to-use`
- substr = `goframe`
- rsStr := gstr.Contains(str, substr)
- fmt.Println(rsStr)
-
- substr = `Goframe`
- rsStr = gstr.Contains(str, substr)
- fmt.Println(rsStr)
-
- // Output:
- // true
- // false
-}
-
-func ExampleContainsAny() {
- var s, chars string
- s = `goframe_is Very Nice.to-use`
- chars = "g"
- rsStr := gstr.ContainsAny(s, chars)
- fmt.Println(rsStr)
-
- chars = "G"
- rsStr = gstr.ContainsAny(s, chars)
- fmt.Println(rsStr)
-
- chars = "Nice"
- rsStr = gstr.ContainsAny(s, chars)
- fmt.Println(rsStr)
-
- // Output:
- // true
- // false
- // true
-}
-
-func ExampleContainsI() {
- var str, substr string
- str = `goframe_is Very Nice.to-use`
-
- substr = "go"
- rsStr := gstr.ContainsI(str, substr)
- fmt.Println(rsStr)
-
- substr = "Go"
- rsStr = gstr.ContainsI(str, substr)
- fmt.Println(rsStr)
-
- substr = "Golang"
- rsStr = gstr.ContainsI(str, substr)
- fmt.Println(rsStr)
-
- // Output:
- // true
- // true
- // false
-}
-
-func ExampleCount() {
- var str, substr string
- str = `goframe_is Very Nice.to-use`
-
- substr = "goframe"
- rsStr := gstr.Count(str, substr)
- fmt.Println(rsStr)
-
- substr = "golang"
- rsStr = gstr.Count(str, substr)
- fmt.Println(rsStr)
-
- // Output:
- // 1
- // 0
-}
-
-func ExampleCountChars() {
- var str string
- var noSpace bool
- str = `goframe_is Very Nice.to-use`
-
- rsStr := gstr.CountChars(str)
- fmt.Println(rsStr)
-
- noSpace = true
- rsStr = gstr.CountChars(str, noSpace)
- fmt.Println(rsStr)
-
- // Output:
- // map[ :2 -:1 .:1 N:1 V:1 _:1 a:1 c:1 e:4 f:1 g:1 i:2 m:1 o:2 r:2 s:2 t:1 u:1 y:1]
- // map[-:1 .:1 N:1 V:1 _:1 a:1 c:1 e:4 f:1 g:1 i:2 m:1 o:2 r:2 s:2 t:1 u:1 y:1]
-}
-
-func ExampleCountI() {
- var s, substr string
- s = `goframe_is Very Nice.to-use`
-
- substr = "goframe"
- rsStr := gstr.CountI(s, substr)
- fmt.Println(rsStr)
-
- substr = "golang"
- rsStr = gstr.CountI(s, substr)
- fmt.Println(rsStr)
-
- // Output:
- // 1
- // 0
-}
-
-func ExampleCountWords() {
- var str string
- str = `goframe is Very Nice to use ! goframe Very Nice !`
- rsStr := gstr.CountWords(str)
- fmt.Println(rsStr)
-
- // Output:
- // map[!:2 Nice:2 Very:2 goframe:2 is:1 to:1 use:1]
-}
-
-func ExampleEqual() {
- var a, b string
- a = `A`
- b = `a`
- rsStr := gstr.Equal(a, b)
- fmt.Println(rsStr)
-
- a = `A`
- b = `B`
- rsStr = gstr.Equal(a, b)
- fmt.Println(rsStr)
-
- a = `C`
- b = `B`
- rsStr = gstr.Equal(a, b)
- fmt.Println(rsStr)
-
- // Output:
- // true
- // false
- // false
-}
-
-func ExampleExplode() {
- var delimiter, str string
- str = `goframe_is_Very_Nice_to_use`
- delimiter = "_"
- rsStr := gstr.Explode(delimiter, str)
- fmt.Println(rsStr)
-
- // Output:
- // [goframe is Very Nice to use]
-}
-
-func ExampleFields() {
- var str string
- str = `goframe is Very Nice to-use`
- rsStr := gstr.Fields(str)
- fmt.Println(rsStr)
-
- // Output:
- // [goframe is Very Nice to-use]
-}
-
-func ExampleHasPrefix() {
- var s, prefix string
- s = `goframe_is Very Nice.to-use`
-
- prefix = "goframe"
- rsStr := gstr.HasPrefix(s, prefix)
- fmt.Println(rsStr)
-
- prefix = "Goframe"
- rsStr = gstr.HasPrefix(s, prefix)
- fmt.Println(rsStr)
-
- // Output:
- // true
- // false
-}
-
-func ExampleHasSuffix() {
- var s, prefix string
- s = `goframe_is Very Nice.to-use`
-
- prefix = "use"
- rsStr := gstr.HasSuffix(s, prefix)
- fmt.Println(rsStr)
-
- prefix = "Use"
- rsStr = gstr.HasSuffix(s, prefix)
- fmt.Println(rsStr)
-
- // Output:
- // true
- // false
-}
-
-func ExampleHideStr() {
- var str string
- var percent int
- var hide string
-
- str = `1234567890`
- percent = 30
- hide = `@`
- rsStr := gstr.HideStr(str, percent, hide)
- fmt.Println(rsStr)
-
- str = `AAAAAAAAAA`
- percent = 60
- hide = `@`
- rsStr = gstr.HideStr(str, percent, hide)
- fmt.Println(rsStr)
-
- str = `ABCDEFGHIJ`
- percent = 10
- hide = `@`
- rsStr = gstr.HideStr(str, percent, hide)
- fmt.Println(rsStr)
-
- // Output:
- // 1234@@@890
- // AA@@@@@@AA
- // ABCDE@GHIJ
-}
-
-func ExampleImplode() {
- var glue string
- var pieces []string
- pieces = []string{"goframe", "is", "Very", "Nice", "to", "use"}
- glue = "-"
- rsStr := gstr.Implode(glue, pieces)
- fmt.Println(rsStr)
-
- // Output:
- // goframe-is-Very-Nice-to-use
-}
-
-func ExampleInArray() {
- var a []string
- var s string
- a = []string{"goframe", "is", "Very", "Nice", "to", "use"}
- s = "goframe"
- rsStr := gstr.InArray(a, s)
- fmt.Println(rsStr)
-
- s = "golang"
- rsStr = gstr.InArray(a, s)
- fmt.Println(rsStr)
-
- // Output:
- // true
- // false
-}
-
-func ExampleIsLetterLower() {
- var b byte
- b = 65 // In ASCII is "a"
- rsStr := gstr.IsLetterLower(b)
- fmt.Println(rsStr)
-
- b = 97 // In ASCII is "A"
- rsStr = gstr.IsLetterLower(b)
- fmt.Println(rsStr)
-
- // Output:
- // false
- // true
-}
-
-func ExampleIsLetterUpper() {
- var b byte
- b = 65 // In ASCII is "a"
- rsStr := gstr.IsLetterUpper(b)
- fmt.Println(rsStr)
-
- b = 97 // In ASCII is "A"
- rsStr = gstr.IsLetterUpper(b)
- fmt.Println(rsStr)
-
- // Output:
- // true
- // false
-}
-
-func ExampleIsNumeric() {
- var s string
-
- s = "88"
- rsStr := gstr.IsNumeric(s)
- fmt.Println(rsStr)
-
- s = "aa66bb88"
- rsStr = gstr.IsNumeric(s)
- fmt.Println(rsStr)
-
- // Output:
- // true
- // false
-}
-
-func ExampleIsSubDomain() {
- var subDomain, mainDomain string
-
- subDomain = `s.goframe.org`
- mainDomain = `goframe.org`
- rsStr := gstr.IsSubDomain(subDomain, mainDomain)
- fmt.Println(rsStr)
-
- subDomain = `s.s.goframe.org`
- mainDomain = `goframe.org`
- rsStr = gstr.IsSubDomain(subDomain, mainDomain)
- fmt.Println(rsStr)
-
- subDomain = `s.s.goframe.org`
- mainDomain = `*goframe.org`
- rsStr = gstr.IsSubDomain(subDomain, mainDomain)
- fmt.Println(rsStr)
-
- // Output:
- // true
- // true
- // false
-}
-
-func ExampleJoin() {
- var array []string
- var sep string
-
- array = []string{"goframe", "is", "Very", "Nice", "to", "use"}
- sep = `,`
- rsStr := gstr.Join(array, sep)
- fmt.Println(rsStr)
-
- // Output:
- // goframe,is,Very,Nice,to,use
-}
-
-func ExampleJoinAny() {
- var sep string
-
- sep = `@`
- arr1 := []string{"goframe", "is", "Very", "Nice", "to", "use"}
- rsStr := gstr.JoinAny(arr1, sep)
- fmt.Println(rsStr)
-
- sep = `|`
- type StructA struct {
- Name string
- Age int
- }
- arr2 := []StructA{
- {"Mary", 18},
- {"Jack", 18},
- {"Lucy", 18},
- }
- rsStr = gstr.JoinAny(arr2, sep)
- fmt.Println(rsStr)
-
- // Output:
- // goframe@is@Very@Nice@to@use
- // {"Name":"Mary","Age":18}|{"Name":"Jack","Age":18}|{"Name":"Lucy","Age":18}
-}
-
-func ExampleLcFirst() {
- var str string
- str = `Goframe`
- rsStr := gstr.LcFirst(str)
- fmt.Println(rsStr)
-
- str = `Goframe is Very Nice to use.`
- rsStr = gstr.LcFirst(str)
- fmt.Println(rsStr)
-
- // Output:
- // goframe
- // goframe is Very Nice to use.
-}
-
-func ExampleLenRune() {
- var str string
- str = `goframe is Very Nice to use`
- rsStr := gstr.LenRune(str)
- fmt.Println(rsStr)
-
- str = `123 4567 890`
- rsStr = gstr.LenRune(str)
- fmt.Println(rsStr)
-
- // Output:
- // 27
- // 12
-}
-
-func ExampleLevenshtein() {
- var str1, str2 string
- var costIns, costRep, costDel int
- str1 = "Hello World"
- str2 = "ello World"
-
- costIns = 1
- costRep = 1
- costDel = 1
- rsStr := gstr.Levenshtein(str1, str2, costIns, costRep, costDel)
- fmt.Println(rsStr)
-
- str1 = "Hello World"
- str2 = "ello Worles"
- costIns = 10
- costRep = 20
- costDel = 30
- rsStr = gstr.Levenshtein(str1, str2, costIns, costRep, costDel)
- fmt.Println(rsStr)
-
- // Output:
- // 1
- // 60
-}
-
-func ExampleNl2Br() {
- var str string
- str = `goframe
-is
-Very
-Nice
-to
-use`
- rsStr := gstr.Nl2Br(str)
- fmt.Println(rsStr)
-
- // Output:
- // goframe
is
Very
Nice
to
use
-}
-
-func ExampleNumberFormat() {
- var number float64
- var decimals int
- var decPoint string
- var thousandsSep string
-
- number = 123456
- decimals = 2
- decPoint = "."
- thousandsSep = ","
- rsStr := gstr.NumberFormat(number, decimals, decPoint, thousandsSep)
- fmt.Println(rsStr)
-
- number = 1234.56
- decimals = 1
- decPoint = ","
- thousandsSep = " "
- rsStr = gstr.NumberFormat(number, decimals, decPoint, thousandsSep)
- fmt.Println(rsStr)
-
- number = 1234.5678
- decimals = 3
- decPoint = "."
- thousandsSep = ","
- rsStr = gstr.NumberFormat(number, decimals, decPoint, thousandsSep)
- fmt.Println(rsStr)
-
- // Output:
- // 123,456.00
- // 1 234,6
- // 1,234.568
-}
-
-func ExampleOctStr() {
- var str string
- str = `\346\200\241`
- rsStr := gstr.OctStr(str)
- fmt.Println(rsStr)
-
- // Output:
- // 怡
-}
-
-func ExampleOrd() {
- var str string
- str = `goframe`
- rsStr := gstr.Ord(str)
- fmt.Println(rsStr)
-
- // Output:
- // 103
-}
-
-func ExampleParse() {
- var str string
-
- str = `v1=m&v2=n`
- rsStr, _ := gstr.Parse(str)
- fmt.Println(rsStr)
-
- str = `v[a][a]=m&v[a][b]=n`
- rsStr, _ = gstr.Parse(str)
- fmt.Println(rsStr)
-
- // 目前不支持嵌套切片。
- str = `v[][]=m&v[][]=n`
- rsStr, err := gstr.Parse(str)
- if err != nil {
- fmt.Println("Error:", err)
- }
- fmt.Println(rsStr)
-
- // 会产生错误
- str = `v=m&v[a]=n`
- rsStr, err = gstr.Parse(str)
- if err != nil {
- fmt.Println("Error:", err)
- }
- fmt.Println(rsStr)
-
- str = `a .[[b=c`
- rsStr, _ = gstr.Parse(str)
- fmt.Println(rsStr)
-
- // Output:
- // map[v1:m v2:n]
- // map[v:map[a:map[a:m b:n]]]
- // map[v:map[]]
- // Error: expected type 'map[string]interface{}' for key 'v', but got 'string'
- // map[]
- // map[a___[b:c]
-}
-
-func ExamplePos() {
- var haystack, needle string
- var startOffset int
-
- haystack = `goframe_is Very Nice.to-use`
- needle = `Nice`
- rsStr := gstr.Pos(haystack, needle)
- fmt.Println(rsStr)
-
- startOffset = 16
- rsStr = gstr.Pos(haystack, needle, startOffset)
- fmt.Println(rsStr)
-
- startOffset = 17
- rsStr = gstr.Pos(haystack, needle, startOffset)
- fmt.Println(rsStr)
-
- needle = `nice`
- rsStr = gstr.Pos(haystack, needle)
- fmt.Println(rsStr)
-
- // Output:
- // 16
- // 16
- // -1
- // -1
-}
-
-func ExamplePosI() {
- var haystack, needle string
- var startOffset int
-
- haystack = `goframe_is Very Nice.to-use`
- needle = `Nice`
- rsStr := gstr.PosI(haystack, needle)
- fmt.Println(rsStr)
-
- startOffset = 16
- rsStr = gstr.PosI(haystack, needle, startOffset)
- fmt.Println(rsStr)
-
- startOffset = 17
- rsStr = gstr.PosI(haystack, needle, startOffset)
- fmt.Println(rsStr)
-
- needle = `nice`
- rsStr = gstr.PosI(haystack, needle)
- fmt.Println(rsStr)
-
- // Output:
- // 16
- // 16
- // -1
- // 16
-}
-
-func ExamplePosIRune() {
- var haystack, needle string
- var startOffset int
-
- haystack = `goframe_is Very Nice.to-use`
- needle = `Nice`
- rsStr := gstr.PosIRune(haystack, needle)
- fmt.Println(rsStr)
-
- startOffset = 16
- rsStr = gstr.PosIRune(haystack, needle, startOffset)
- fmt.Println(rsStr)
-
- startOffset = 17
- rsStr = gstr.PosIRune(haystack, needle, startOffset)
- fmt.Println(rsStr)
-
- needle = `nice`
- rsStr = gstr.PosIRune(haystack, needle)
- fmt.Println(rsStr)
-
- // Output:
- // 16
- // 16
- // -1
- // 16
-}
-
-func ExamplePosR() {
- var haystack, needle string
- var startOffset int
-
- haystack = `goframe_is Very Nice.to-use`
- needle = `Nice`
- rsStr := gstr.PosR(haystack, needle)
- fmt.Println(rsStr)
-
- startOffset = 16
- rsStr = gstr.PosR(haystack, needle, startOffset)
- fmt.Println(rsStr)
-
- startOffset = 17
- rsStr = gstr.PosR(haystack, needle, startOffset)
- fmt.Println(rsStr)
-
- needle = `nice`
- rsStr = gstr.PosR(haystack, needle)
- fmt.Println(rsStr)
-
- // Output:
- // 16
- // 16
- // -1
- // -1
-}
-
-func ExamplePosRI() {
- var haystack, needle string
- var startOffset int
-
- haystack = `goframe_is Very Nice.to-use`
- needle = `Nice`
- rsStr := gstr.PosRI(haystack, needle)
- fmt.Println(rsStr)
-
- startOffset = 16
- rsStr = gstr.PosRI(haystack, needle, startOffset)
- fmt.Println(rsStr)
-
- startOffset = 17
- rsStr = gstr.PosRI(haystack, needle, startOffset)
- fmt.Println(rsStr)
-
- needle = `nice`
- rsStr = gstr.PosRI(haystack, needle)
- fmt.Println(rsStr)
-
- // Output:
- // 16
- // 16
- // -1
- // 16
-
-}
-
-func ExamplePosRIRune() {
- var haystack, needle string
- var startOffset int
-
- haystack = `goframe_is Very Nice.to-use`
- needle = `Nice`
- rsStr := gstr.PosRIRune(haystack, needle)
- fmt.Println(rsStr)
-
- startOffset = 16
- rsStr = gstr.PosRIRune(haystack, needle, startOffset)
- fmt.Println(rsStr)
-
- startOffset = 17
- rsStr = gstr.PosRIRune(haystack, needle, startOffset)
- fmt.Println(rsStr)
-
- needle = `nice`
- rsStr = gstr.PosRIRune(haystack, needle)
- fmt.Println(rsStr)
-
- // Output:
- // 16
- // 16
- // -1
- // 16
-}
-
-func ExamplePosRRune() {
- var haystack, needle string
- var startOffset int
-
- haystack = `goframe_is Very Nice.to-use`
- needle = `Nice`
- rsStr := gstr.PosRRune(haystack, needle)
- fmt.Println(rsStr)
-
- startOffset = 16
- rsStr = gstr.PosRRune(haystack, needle, startOffset)
- fmt.Println(rsStr)
-
- startOffset = 17
- rsStr = gstr.PosRRune(haystack, needle, startOffset)
- fmt.Println(rsStr)
-
- needle = `nice`
- rsStr = gstr.PosRRune(haystack, needle)
- fmt.Println(rsStr)
-
- // Output:
- // 16
- // 16
- // -1
- // -1
-}
-
-func ExamplePosRune() {
- var haystack, needle string
- var startOffset int
-
- haystack = `goframe_is Very Nice.to-use`
- needle = `Nice`
- rsStr := gstr.PosRune(haystack, needle)
- fmt.Println(rsStr)
-
- startOffset = 16
- rsStr = gstr.PosRune(haystack, needle, startOffset)
- fmt.Println(rsStr)
-
- startOffset = 17
- rsStr = gstr.PosRune(haystack, needle, startOffset)
- fmt.Println(rsStr)
-
- needle = `nice`
- rsStr = gstr.PosRune(haystack, needle)
- fmt.Println(rsStr)
-
- // Output:
- // 16
- // 16
- // -1
- // -1
-}
-
-func ExampleQuoteMeta() {
- var str string
- str = `.\+?[^]()`
- rsStr := gstr.QuoteMeta(str)
- fmt.Println(rsStr)
-
- // Output:
- // \.\\\+\?\[\^\]\(\)
-
-}
-
-func ExampleRepeat() {
- var input string
- var multiplier int
- input = `goframe `
- multiplier = 3
- rsStr := gstr.Repeat(input, multiplier)
- fmt.Println(rsStr)
-
- // Output:
- // goframe goframe goframe
-}
-
-func ExampleReplace() {
- var origin, search, replace string
- var count int
-
- origin = `goframe_is_Very_Nice_to_use!`
- search = `_`
- replace = `+`
- rsStr := gstr.Replace(origin, search, replace)
- fmt.Println(rsStr)
-
- count = 2
- rsStr = gstr.Replace(origin, search, replace, count)
- fmt.Println(rsStr)
-
- // Output:
- // goframe+is+Very+Nice+to+use!
- // goframe+is+Very_Nice_to_use!
-}
-
-func ExampleReplaceByArray() {
- var origin string
- var array []string
-
- origin = `Golang is Very Good`
-
- array = []string{"o", "O"}
- rsStr := gstr.ReplaceByArray(origin, array)
- fmt.Println(rsStr)
-
- array = []string{"Golang", "Goframe", "Good", "Nice"}
- rsStr = gstr.ReplaceByArray(origin, array)
- fmt.Println(rsStr)
-
- // Output:
- // GOlang is Very GOOd
- // Goframe is Very Nice
-}
-
-func ExampleReplaceByMap() {
- var origin string
- var replaces map[string]string
-
- origin = `Golang is Very Good`
-
- replaces = map[string]string{
- "Golang": "Goframe",
- "Good": "Nice",
- }
- rsStr := gstr.ReplaceByMap(origin, replaces)
- fmt.Println(rsStr)
-
- replaces = map[string]string{
- "golang": "Goframe",
- "good": "Nice",
- }
- rsStr = gstr.ReplaceByMap(origin, replaces)
- fmt.Println(rsStr)
-
- // Output:
- // Goframe is Very Nice
- // Golang is Very Good
-}
-
-func ExampleReplaceI() {
- var origin, search, replace string
- var count int
- origin = `goframe_is Very Nice.to-use`
- search = `goframe`
- replace = `golang`
- count = 3
- rsStr := gstr.ReplaceI(origin, search, replace, count)
- fmt.Println(rsStr)
-
- // Output:
- // golang_is Very Nice.to-use
-}
-
-func ExampleReplaceIByArray() {
- var origin string
- var replaces []string
- replaces = []string{
- "frame",
- "lang",
- "nice",
- "goframe",
- }
- origin = `goframe Nice`
- rsStr := gstr.ReplaceIByArray(origin, replaces)
- fmt.Println(rsStr)
-
- // Output:
- // golang goframe
-}
-
-func ExampleReplaceIByMap() {
- var origin string
- var replaces map[string]string
-
- origin = `Golang is Very Good`
-
- replaces = map[string]string{
- "Golang": "Goframe",
- "Good": "Nice",
- }
- rsStr := gstr.ReplaceIByMap(origin, replaces)
- fmt.Println(rsStr)
-
- replaces = map[string]string{
- "golang": "Goframe",
- "good": "Nice",
- }
- rsStr = gstr.ReplaceIByMap(origin, replaces)
- fmt.Println(rsStr)
-
- // Output:
- // Goframe is Very Nice
- // Goframe is Very Nice
-}
-
-func ExampleReverse() {
- var str string
- str = `Goframe-Nice`
- rsStr := gstr.Reverse(str)
- fmt.Println(rsStr)
-
- // Output:
- // eciN-emarfoG
-}
-
-func ExampleSearchArray() {
- var a []string
- var s string
- a = []string{
- "goframe",
- "is",
- "Very",
- "Nice",
- }
- s = `goframe`
- rsStr := gstr.SearchArray(a, s)
- fmt.Println(rsStr)
-
- s = `Very`
- rsStr = gstr.SearchArray(a, s)
- fmt.Println(rsStr)
-
- s = `use`
- rsStr = gstr.SearchArray(a, s)
- fmt.Println(rsStr)
-
- // Output:
- // 0
- // 2
- // -1
-}
-
-func ExampleShuffle() {
- var str string
- str = `goframe_is Nice.`
- rsStr := gstr.Shuffle(str)
- fmt.Println(rsStr)
-
- // May Output:
- // e giNomescraf._i
-}
-
-func ExampleSimilarText() {
- var first, second string
- var percent *float64
- first = `goframe_is`
- second = `go-nice`
- rsStr := gstr.SimilarText(first, second, percent)
- fmt.Println(rsStr)
-
- // Output:
- // 3
-}
-
-func ExampleSoundex() {
- var str string
- var str2 string
- str = `Euler`
- str2 = `Ellery`
- rsStr := gstr.Soundex(str)
- rsStr2 := gstr.Soundex(str2)
- fmt.Println(rsStr, rsStr2)
-
- str = `Gauss`
- str2 = `Ghosh`
- rsStr = gstr.Soundex(str)
- rsStr2 = gstr.Soundex(str2)
- fmt.Println(rsStr, rsStr2)
-
- str = `Lloyd`
- str2 = `Ladd`
- rsStr = gstr.Soundex(str)
- rsStr2 = gstr.Soundex(str2)
- fmt.Println(rsStr, rsStr2)
-
- // Output:
- // E406 E406
- // G020 G020
- // L030 L030
-}
-
-func ExampleSplit() {
- var str, delimiter string
- str = `GoFrame_Nice`
- delimiter = `ame_N`
- rsStr := gstr.Split(str, delimiter)
- fmt.Println(rsStr)
-
- // Output:
- // [GoFr ice]
-}
-
-func ExampleSplitAndTrim() {
- var str, delimiter, characterMask string
- str = ` goframe, is, Very ,Nice ,to, use`
- delimiter = `,`
- characterMask = ` `
- rsStr := gstr.SplitAndTrim(str, delimiter, characterMask)
- fmt.Println(rsStr)
-
- // Output:
- // [goframe is Very Nice to use]
-}
-
-func ExampleStr() {
- var haystack, needle string
- haystack = `goframe nice`
- needle = `fram`
- rsStr := gstr.Str(haystack, needle)
- fmt.Println(rsStr)
-
- needle = `ame n`
- rsStr = gstr.Str(haystack, needle)
- fmt.Println(rsStr)
-
- // Output:
- // me nice
- // nice
-}
-
-func ExampleStrEx() {
- var haystack, needle string
- haystack = `goframe_is Very Nice.to-use`
- needle = `goframe`
- rsStr := gstr.StrEx(haystack, needle)
- fmt.Println(rsStr)
-
- // Output:
- // _is Very Nice.to-use
-}
-
-func ExampleStrLimit() {
- var str, suffix string
- var length int
- str = `goframe_is Very Nice.to-use`
- length = 8
- suffix = "suffix"
- rsStr := gstr.StrLimit(str, length, suffix)
- fmt.Println(rsStr)
-
- // Output:
- // goframe_suffix
-}
-
-func ExampleStrLimitRune() {
- var str, suffix string
- var length int
- str = `goframe_is Very Nice.to-use`
- length = 7
- suffix = "suffix"
- rsStr := gstr.StrLimitRune(str, length, suffix)
- fmt.Println(rsStr)
-
- // Output:
- // goframesuffix
-}
-
-func ExampleStrTill() {
- var haystack, needle string
-
- haystack = `ABCDEFGHIJKLMN`
- needle = `C`
- rsStr := gstr.StrTill(haystack, needle)
- fmt.Println(rsStr)
-
- needle = `E`
- rsStr = gstr.StrTill(haystack, needle)
- fmt.Println(rsStr)
-
- needle = `G`
- rsStr = gstr.StrTill(haystack, needle)
- fmt.Println(rsStr)
-
- // Output:
- // ABC
- // ABCDE
- // ABCDEFG
-}
-
-func ExampleStrTillEx() {
- var haystack, needle string
- haystack = `goframe_is Very Nice.to-use`
- needle = `frame`
- rsStr := gstr.StrTillEx(haystack, needle)
- fmt.Println(rsStr)
-
- haystack = `goframe_is Very Nice.to-use`
- needle = `to`
- rsStr = gstr.StrTillEx(haystack, needle)
- fmt.Println(rsStr)
-
- // Output:
- // go
- // goframe_is Very Nice.
-}
-
-func ExampleStripSlashes() {
- var str string
- str = `goframe "is" Very Nice to use`
- rsStr := gstr.StripSlashes(str)
- fmt.Println(rsStr)
-
- // Output:
- // goframe "is" Very Nice to use
-}
-
-func ExampleSubStr() {
- var str string
- var start, length int
- str = `GoFrame Nice`
- start = 0
- length = 2
- subStr := gstr.SubStr(str, start, length)
- fmt.Println(subStr)
-
- str = `GoFrame Nice`
- start = 5
- length = 6
- subStr = gstr.SubStr(str, start, length)
- fmt.Println(subStr)
-
- // Output:
- // Go
- // me Nic
-}
-
-func ExampleSubStrRune() {
- var str string
- var start, length int
- str = `GoFrame Nice`
- start = 5
- length = 4
- subStr := gstr.SubStrRune(str, start, length)
- fmt.Println(subStr)
-
- // Output:
- // me N
-}
-
-func ExampleToLower() {
- var s string
- s = `GoFRAME_IS VERY NICE.TO-USE`
- rsStr := gstr.ToLower(s)
- fmt.Println(rsStr)
-
- // Output:
- // goframe_is very nice.to-use
-}
-
-func ExampleToUpper() {
- var s string
- s = `goframe_is Very Nice.to-use`
- rsStr := gstr.ToUpper(s)
- fmt.Println(rsStr)
-
- // Output:
- // GOFRAME_IS VERY NICE.TO-USE
-}
-
-func ExampleTrim() {
- var str, characterMask string
- str = `goframe_is Very Nice.to-use`
- characterMask = "to-use"
- rsStr := gstr.Trim(str, characterMask)
- fmt.Println(rsStr)
-
- // Output:
- // goframe_is Very Nice.
-}
-
-func ExampleTrimAll() {
- var str, characterMask string
- str = `goframe`
- characterMask = "g o e"
- rsStr := gstr.TrimAll(str, characterMask)
- fmt.Println(rsStr)
-
- // Output:
- // fram
-}
-
-func ExampleTrimLeft() {
- var str, characterMask string
- str = ` goframe is Very Nice to use`
- characterMask = "goframeisVery"
- rsStr := gstr.TrimLeft(str, characterMask)
- fmt.Println(rsStr)
-
- // Output:
- // Nice to use
-}
-
-func ExampleTrimLeftStr() {
- var str, cut string
- var count int
- str = ` goframe is Very Nice.to-use`
- cut = " go"
- count = 1
- rsStr := gstr.TrimLeftStr(str, cut, count)
- fmt.Println(rsStr)
-
- // Output:
- // frame is Very Nice.to-use
-}
-
-func ExampleTrimRight() {
- var str, characterMask string
- str = `goframe_is Very Nice to use `
- rsStr := gstr.TrimRight(str)
- fmt.Println(rsStr)
-
- str = `goframe_is Very Nice to-use `
- characterMask = "to-use" // []byte{"t", "o", "-", "u", "s", "e"}
- rsStr = gstr.TrimRight(str, characterMask)
- fmt.Println(rsStr)
-
- // Output:
- // goframe_is Very Nice to use
- // goframe_is Very Nic
-}
-
-func ExampleTrimRightStr() {
- var str, cut string
- var count int
- str = `aaa,bbb,ccc,ddd,eee,`
- cut = ","
- count = 1
- rsStr := gstr.TrimRightStr(str, cut, count)
- fmt.Println(rsStr)
-
- str = `aaa,bbb,ccc,ddd,eee,,,,,`
- cut = ","
- count = -1
- rsStr = gstr.TrimRightStr(str, cut, count)
- fmt.Println(rsStr)
-
- str = `aaa,bbb,ccc,ddd,eee,,,,, `
- cut = ","
- count = -1
- rsStr = gstr.TrimRightStr(str, cut, count)
- fmt.Println(rsStr)
-
- // Output:
- // aaa,bbb,ccc,ddd,eee
- // aaa,bbb,ccc,ddd,eee
- // aaa,bbb,ccc,ddd,eee,,,,,
-}
-
-func ExampleTrimStr() {
- var str, cut string
- var count int
- str = `goframe is Very Nice to-use`
- cut = "goframe"
- rsStr := gstr.TrimStr(str, cut, count)
- fmt.Println(rsStr)
-
- cut = "use"
- rsStr = gstr.TrimStr(str, cut, count)
- fmt.Println(rsStr)
-
- // Output:
- // is Very Nice to-use
- // goframe is Very Nice to-
-}
-
-func ExampleUcFirst() {
- var s string
- s = `goframe is very nice to use.`
- rsStr := gstr.UcFirst(s)
- fmt.Println(rsStr)
-
- // Output:
- // Goframe is very nice to use.
-}
-
-func ExampleUcWords() {
- var str string
- str = `goframe is very nice to use.`
- rsStr := gstr.UcWords(str)
- fmt.Println(rsStr)
-
- // Output:
- // Goframe Is Very Nice To Use.
-}
-
-func ExampleWordWrap() {
- var str, br string
- var width int
- str = `A very long woooooooooooooooooord. and something`
- width = 8
- br = "\n"
- rsStr := gstr.WordWrap(str, width, br)
- fmt.Println(rsStr)
-
- str = `The quick brown fox jumped over the lazy dog.`
- width = 20
- br = "
\n"
- rsStr = gstr.WordWrap(str, width, br)
- fmt.Printf("%v", rsStr)
-
- // Output:
- // A very
- // long
- // woooooooooooooooooord.
- // and
- // something
- // The quick brown fox
- // jumped over the lazy
- // dog.
-}
From 84046a060a02b46a926e0ce3a86d99d957016a70 Mon Sep 17 00:00:00 2001
From: iamyl <57165465@qq.com>
Date: Fri, 5 Nov 2021 10:50:15 +0800
Subject: [PATCH 06/17] Package gstr's All Example
---
text/gstr/gstr_z_all_example_test.go | 1538 ++++++++++++++++++++++++++
1 file changed, 1538 insertions(+)
create mode 100644 text/gstr/gstr_z_all_example_test.go
diff --git a/text/gstr/gstr_z_all_example_test.go b/text/gstr/gstr_z_all_example_test.go
new file mode 100644
index 000000000..4a7cdd34d
--- /dev/null
+++ b/text/gstr/gstr_z_all_example_test.go
@@ -0,0 +1,1538 @@
+package gstr_test
+
+import (
+ "fmt"
+
+ "github.com/gogf/gf/v2/text/gstr"
+)
+
+func ExampleAddSlashes() {
+ var str string
+ str = `'aa'"bb"cc\r\n\d\t`
+ rsStr := gstr.AddSlashes(str)
+ fmt.Println(rsStr)
+
+ // Output:
+ // \'aa\'\"bb\"cc\\r\\n\\d\\t
+}
+
+func ExampleCaseCamel() {
+ var str string
+ str = `goframe_is very nice.to-use`
+ rsStr := gstr.CaseCamel(str)
+ fmt.Println(rsStr)
+
+ // Output:
+ // GoframeIsVeryNiceToUse
+}
+
+func ExampleCaseCamelLower() {
+ var str string
+ str = `goframe_is very nice.to-use`
+ rsStr := gstr.CaseCamelLower(str)
+ fmt.Println(rsStr)
+
+ // Output:
+ // goframeIsVeryNiceToUse
+}
+
+func ExampleCaseDelimited() {
+ var str string
+ var del uint8
+ str = `goframe_is_very-nice.to-use`
+ del = 35
+ rsStr := gstr.CaseDelimited(str, del)
+ fmt.Println(rsStr)
+
+ // Output:
+ // goframe#is#very#nice#to#use
+}
+
+func ExampleCaseDelimitedScreaming() {
+ var str string
+ var del uint8
+ var screaming bool
+ str = `goframe_is Very Nice.to-use`
+ del = 35
+ screaming = true
+ rsStr := gstr.CaseDelimitedScreaming(str, del, screaming)
+ fmt.Println(rsStr)
+
+ // Output:
+ // GOFRAME#IS#VERY#NICE#TO#USE
+}
+
+func ExampleCaseKebab() {
+ var str string
+ str = `goframe_is Very Nice.to-use`
+ rsStr := gstr.CaseKebab(str)
+ fmt.Println(rsStr)
+
+ // Output:
+ // goframe-is-very-nice-to-use
+}
+
+func ExampleCaseKebabScreaming() {
+ var str string
+ str = `goframe_is Very Nice.to-use`
+ rsStr := gstr.CaseKebabScreaming(str)
+ fmt.Println(rsStr)
+
+ // Output:
+ // GOFRAME-IS-VERY-NICE-TO-USE
+}
+
+func ExampleCaseSnake() {
+ var str string
+ str = `goframe_is Very Nice.to-use`
+ rsStr := gstr.CaseSnake(str)
+ fmt.Println(rsStr)
+
+ // Output:
+ // goframe_is_very_nice_to_use
+}
+
+func ExampleCaseSnakeFirstUpper() {
+ var str string
+ str = `GoframeIsVeryNiceToUse`
+ rsStr := gstr.CaseSnakeFirstUpper(str)
+ fmt.Println(rsStr)
+
+ // Output:
+ // goframe_is_very_nice_to_use
+}
+
+func ExampleCaseSnakeScreaming() {
+ var str string
+ str = `goframe_is Very Nice.to-use`
+ rsStr := gstr.CaseSnakeScreaming(str)
+ fmt.Println(rsStr)
+
+ // Output:
+ // GOFRAME_IS_VERY_NICE_TO_USE
+}
+
+func ExampleChr() {
+ var ascii int
+ ascii = 65
+ rsStr := gstr.Chr(ascii)
+ fmt.Println(rsStr)
+
+ // Output:
+ // A
+}
+
+func ExampleChunkSplit() {
+ var body string
+ var chunkLen int
+ var end string
+ body = `1234`
+ chunkLen = 2
+ end = "#"
+ rsStr := gstr.ChunkSplit(body, chunkLen, end)
+ fmt.Println(rsStr)
+
+ body = `我爱Goframe`
+ chunkLen = 1
+ end = "-"
+ rsStr = gstr.ChunkSplit(body, chunkLen, end)
+ fmt.Println(rsStr)
+
+ body = `1234`
+ chunkLen = 1
+ end = ""
+ rsStr = gstr.ChunkSplit(body, chunkLen, end)
+ fmt.Println(rsStr)
+
+ // May Output:
+ // 12#34#
+ // 我-爱-G-o-f-r-a-m-e-
+ // "1\r\n2\r\n3\r\n4\r\n"
+}
+
+func ExampleCompare() {
+ var a string
+ var b string
+
+ a = "C"
+ b = "C"
+ rsStr := gstr.Compare(a, b)
+ fmt.Println(rsStr)
+
+ a = "A"
+ b = "B"
+ rsStr = gstr.Compare(a, b)
+ fmt.Println(rsStr)
+
+ a = "C"
+ b = "B"
+ rsStr = gstr.Compare(a, b)
+ fmt.Println(rsStr)
+
+ // Output:
+ // 0
+ // -1
+ // 1
+}
+
+func ExampleCompareVersion() {
+ var a string
+ var b string
+
+ a = "v2.11.9"
+ b = "v2.10.8"
+
+ rsStr := gstr.CompareVersion(a, b)
+ fmt.Println(rsStr)
+
+ a = "A.10.8"
+ b = "A.19.7"
+ rsStr = gstr.CompareVersion(a, b)
+ fmt.Println(rsStr)
+
+ a = "2.8.beta"
+ b = "2.8"
+ rsStr = gstr.CompareVersion(a, b)
+ fmt.Println(rsStr)
+
+ // Output:
+ // 1
+ // -1
+ // 0
+}
+
+func ExampleCompareVersionGo() {
+ var a string
+ var b string
+
+ a = "v2.11.9"
+ b = "v2.10.8"
+ rsStr := gstr.CompareVersionGo(a, b)
+ fmt.Println(rsStr)
+
+ a = "v0.0.2-20180626092158-b2ccc119800e"
+ b = "v1.0.1-20190626092158-b2ccc519800e"
+ rsStr = gstr.CompareVersionGo(a, b)
+ fmt.Println(rsStr)
+
+ a = "v4.20.1"
+ b = "v4.20.1+incompatible"
+ rsStr = gstr.CompareVersionGo(a, b)
+ fmt.Println(rsStr)
+
+ // Output:
+ // 1
+ // -1
+ // 0
+}
+
+func ExampleContains() {
+ var str, substr string
+ str = `goframe_is Very Nice.to-use`
+ substr = `goframe`
+ rsStr := gstr.Contains(str, substr)
+ fmt.Println(rsStr)
+
+ substr = `Goframe`
+ rsStr = gstr.Contains(str, substr)
+ fmt.Println(rsStr)
+
+ // Output:
+ // true
+ // false
+}
+
+func ExampleContainsAny() {
+ var s, chars string
+ s = `goframe_is Very Nice.to-use`
+ chars = "g"
+ rsStr := gstr.ContainsAny(s, chars)
+ fmt.Println(rsStr)
+
+ chars = "G"
+ rsStr = gstr.ContainsAny(s, chars)
+ fmt.Println(rsStr)
+
+ chars = "Nice"
+ rsStr = gstr.ContainsAny(s, chars)
+ fmt.Println(rsStr)
+
+ // Output:
+ // true
+ // false
+ // true
+}
+
+func ExampleContainsI() {
+ var str, substr string
+ str = `goframe_is Very Nice.to-use`
+
+ substr = "go"
+ rsStr := gstr.ContainsI(str, substr)
+ fmt.Println(rsStr)
+
+ substr = "Go"
+ rsStr = gstr.ContainsI(str, substr)
+ fmt.Println(rsStr)
+
+ substr = "Golang"
+ rsStr = gstr.ContainsI(str, substr)
+ fmt.Println(rsStr)
+
+ // Output:
+ // true
+ // true
+ // false
+}
+
+func ExampleCount() {
+ var str, substr string
+ str = `goframe_is Very Nice.to-use`
+
+ substr = "goframe"
+ rsStr := gstr.Count(str, substr)
+ fmt.Println(rsStr)
+
+ substr = "golang"
+ rsStr = gstr.Count(str, substr)
+ fmt.Println(rsStr)
+
+ // Output:
+ // 1
+ // 0
+}
+
+func ExampleCountChars() {
+ var str string
+ var noSpace bool
+ str = `goframe_is Very Nice.to-use`
+
+ rsStr := gstr.CountChars(str)
+ fmt.Println(rsStr)
+
+ noSpace = true
+ rsStr = gstr.CountChars(str, noSpace)
+ fmt.Println(rsStr)
+
+ // Output:
+ // map[ :2 -:1 .:1 N:1 V:1 _:1 a:1 c:1 e:4 f:1 g:1 i:2 m:1 o:2 r:2 s:2 t:1 u:1 y:1]
+ // map[-:1 .:1 N:1 V:1 _:1 a:1 c:1 e:4 f:1 g:1 i:2 m:1 o:2 r:2 s:2 t:1 u:1 y:1]
+}
+
+func ExampleCountI() {
+ var s, substr string
+ s = `goframe_is Very Nice.to-use`
+
+ substr = "goframe"
+ rsStr := gstr.CountI(s, substr)
+ fmt.Println(rsStr)
+
+ substr = "golang"
+ rsStr = gstr.CountI(s, substr)
+ fmt.Println(rsStr)
+
+ // Output:
+ // 1
+ // 0
+}
+
+func ExampleCountWords() {
+ var str string
+ str = `goframe is Very Nice to use ! goframe Very Nice !`
+ rsStr := gstr.CountWords(str)
+ fmt.Println(rsStr)
+
+ // Output:
+ // map[!:2 Nice:2 Very:2 goframe:2 is:1 to:1 use:1]
+}
+
+func ExampleEqual() {
+ var a, b string
+ a = `A`
+ b = `a`
+ rsStr := gstr.Equal(a, b)
+ fmt.Println(rsStr)
+
+ a = `A`
+ b = `B`
+ rsStr = gstr.Equal(a, b)
+ fmt.Println(rsStr)
+
+ a = `C`
+ b = `B`
+ rsStr = gstr.Equal(a, b)
+ fmt.Println(rsStr)
+
+ // Output:
+ // true
+ // false
+ // false
+}
+
+func ExampleExplode() {
+ var delimiter, str string
+ str = `goframe_is_Very_Nice_to_use`
+ delimiter = "_"
+ rsStr := gstr.Explode(delimiter, str)
+ fmt.Println(rsStr)
+
+ // Output:
+ // [goframe is Very Nice to use]
+}
+
+func ExampleFields() {
+ var str string
+ str = `goframe is Very Nice to-use`
+ rsStr := gstr.Fields(str)
+ fmt.Println(rsStr)
+
+ // Output:
+ // [goframe is Very Nice to-use]
+}
+
+func ExampleHasPrefix() {
+ var s, prefix string
+ s = `goframe_is Very Nice.to-use`
+
+ prefix = "goframe"
+ rsStr := gstr.HasPrefix(s, prefix)
+ fmt.Println(rsStr)
+
+ prefix = "Goframe"
+ rsStr = gstr.HasPrefix(s, prefix)
+ fmt.Println(rsStr)
+
+ // Output:
+ // true
+ // false
+}
+
+func ExampleHasSuffix() {
+ var s, prefix string
+ s = `goframe_is Very Nice.to-use`
+
+ prefix = "use"
+ rsStr := gstr.HasSuffix(s, prefix)
+ fmt.Println(rsStr)
+
+ prefix = "Use"
+ rsStr = gstr.HasSuffix(s, prefix)
+ fmt.Println(rsStr)
+
+ // Output:
+ // true
+ // false
+}
+
+func ExampleHideStr() {
+ var str string
+ var percent int
+ var hide string
+
+ str = `1234567890`
+ percent = 30
+ hide = `@`
+ rsStr := gstr.HideStr(str, percent, hide)
+ fmt.Println(rsStr)
+
+ str = `AAAAAAAAAA`
+ percent = 60
+ hide = `@`
+ rsStr = gstr.HideStr(str, percent, hide)
+ fmt.Println(rsStr)
+
+ str = `ABCDEFGHIJ`
+ percent = 10
+ hide = `@`
+ rsStr = gstr.HideStr(str, percent, hide)
+ fmt.Println(rsStr)
+
+ // Output:
+ // 1234@@@890
+ // AA@@@@@@AA
+ // ABCDE@GHIJ
+}
+
+func ExampleImplode() {
+ var glue string
+ var pieces []string
+ pieces = []string{"goframe", "is", "Very", "Nice", "to", "use"}
+ glue = "-"
+ rsStr := gstr.Implode(glue, pieces)
+ fmt.Println(rsStr)
+
+ // Output:
+ // goframe-is-Very-Nice-to-use
+}
+
+func ExampleInArray() {
+ var a []string
+ var s string
+ a = []string{"goframe", "is", "Very", "Nice", "to", "use"}
+ s = "goframe"
+ rsStr := gstr.InArray(a, s)
+ fmt.Println(rsStr)
+
+ s = "golang"
+ rsStr = gstr.InArray(a, s)
+ fmt.Println(rsStr)
+
+ // Output:
+ // true
+ // false
+}
+
+func ExampleIsLetterLower() {
+ var b byte
+ b = 65 // In ASCII is "a"
+ rsStr := gstr.IsLetterLower(b)
+ fmt.Println(rsStr)
+
+ b = 97 // In ASCII is "A"
+ rsStr = gstr.IsLetterLower(b)
+ fmt.Println(rsStr)
+
+ // Output:
+ // false
+ // true
+}
+
+func ExampleIsLetterUpper() {
+ var b byte
+ b = 65 // In ASCII is "a"
+ rsStr := gstr.IsLetterUpper(b)
+ fmt.Println(rsStr)
+
+ b = 97 // In ASCII is "A"
+ rsStr = gstr.IsLetterUpper(b)
+ fmt.Println(rsStr)
+
+ // Output:
+ // true
+ // false
+}
+
+func ExampleIsNumeric() {
+ var s string
+
+ s = "88"
+ rsStr := gstr.IsNumeric(s)
+ fmt.Println(rsStr)
+
+ s = "aa66bb88"
+ rsStr = gstr.IsNumeric(s)
+ fmt.Println(rsStr)
+
+ // Output:
+ // true
+ // false
+}
+
+func ExampleIsSubDomain() {
+ var subDomain, mainDomain string
+
+ subDomain = `s.goframe.org`
+ mainDomain = `goframe.org`
+ rsStr := gstr.IsSubDomain(subDomain, mainDomain)
+ fmt.Println(rsStr)
+
+ subDomain = `s.s.goframe.org`
+ mainDomain = `goframe.org`
+ rsStr = gstr.IsSubDomain(subDomain, mainDomain)
+ fmt.Println(rsStr)
+
+ subDomain = `s.s.goframe.org`
+ mainDomain = `*goframe.org`
+ rsStr = gstr.IsSubDomain(subDomain, mainDomain)
+ fmt.Println(rsStr)
+
+ // Output:
+ // true
+ // true
+ // false
+}
+
+func ExampleJoin() {
+ var array []string
+ var sep string
+
+ array = []string{"goframe", "is", "Very", "Nice", "to", "use"}
+ sep = `,`
+ rsStr := gstr.Join(array, sep)
+ fmt.Println(rsStr)
+
+ // Output:
+ // goframe,is,Very,Nice,to,use
+}
+
+func ExampleJoinAny() {
+ var sep string
+
+ sep = `@`
+ arr1 := []string{"goframe", "is", "Very", "Nice", "to", "use"}
+ rsStr := gstr.JoinAny(arr1, sep)
+ fmt.Println(rsStr)
+
+ sep = `|`
+ type StructA struct {
+ Name string
+ Age int
+ }
+ arr2 := []StructA{
+ {"Mary", 18},
+ {"Jack", 18},
+ {"Lucy", 18},
+ }
+ rsStr = gstr.JoinAny(arr2, sep)
+ fmt.Println(rsStr)
+
+ // Output:
+ // goframe@is@Very@Nice@to@use
+ // {"Name":"Mary","Age":18}|{"Name":"Jack","Age":18}|{"Name":"Lucy","Age":18}
+}
+
+func ExampleLcFirst() {
+ var str string
+ str = `Goframe`
+ rsStr := gstr.LcFirst(str)
+ fmt.Println(rsStr)
+
+ str = `Goframe is Very Nice to use.`
+ rsStr = gstr.LcFirst(str)
+ fmt.Println(rsStr)
+
+ // Output:
+ // goframe
+ // goframe is Very Nice to use.
+}
+
+func ExampleLenRune() {
+ var str string
+ str = `goframe is Very Nice to use`
+ rsStr := gstr.LenRune(str)
+ fmt.Println(rsStr)
+
+ str = `123 4567 890`
+ rsStr = gstr.LenRune(str)
+ fmt.Println(rsStr)
+
+ // Output:
+ // 27
+ // 12
+}
+
+func ExampleLevenshtein() {
+ var str1, str2 string
+ var costIns, costRep, costDel int
+ str1 = "Hello World"
+ str2 = "ello World"
+
+ costIns = 1
+ costRep = 1
+ costDel = 1
+ rsStr := gstr.Levenshtein(str1, str2, costIns, costRep, costDel)
+ fmt.Println(rsStr)
+
+ str1 = "Hello World"
+ str2 = "ello Worles"
+ costIns = 10
+ costRep = 20
+ costDel = 30
+ rsStr = gstr.Levenshtein(str1, str2, costIns, costRep, costDel)
+ fmt.Println(rsStr)
+
+ // Output:
+ // 1
+ // 60
+}
+
+func ExampleNl2Br() {
+ var str string
+ str = `goframe
+is
+Very
+Nice
+to
+use`
+ rsStr := gstr.Nl2Br(str)
+ fmt.Println(rsStr)
+
+ // Output:
+ // goframe
is
Very
Nice
to
use
+}
+
+func ExampleNumberFormat() {
+ var number float64
+ var decimals int
+ var decPoint string
+ var thousandsSep string
+
+ number = 123456
+ decimals = 2
+ decPoint = "."
+ thousandsSep = ","
+ rsStr := gstr.NumberFormat(number, decimals, decPoint, thousandsSep)
+ fmt.Println(rsStr)
+
+ number = 1234.56
+ decimals = 1
+ decPoint = ","
+ thousandsSep = " "
+ rsStr = gstr.NumberFormat(number, decimals, decPoint, thousandsSep)
+ fmt.Println(rsStr)
+
+ number = 1234.5678
+ decimals = 3
+ decPoint = "."
+ thousandsSep = ","
+ rsStr = gstr.NumberFormat(number, decimals, decPoint, thousandsSep)
+ fmt.Println(rsStr)
+
+ // Output:
+ // 123,456.00
+ // 1 234,6
+ // 1,234.568
+}
+
+func ExampleOctStr() {
+ var str string
+ str = `\346\200\241`
+ rsStr := gstr.OctStr(str)
+ fmt.Println(rsStr)
+
+ // Output:
+ // 怡
+}
+
+func ExampleOrd() {
+ var str string
+ str = `goframe`
+ rsStr := gstr.Ord(str)
+ fmt.Println(rsStr)
+
+ // Output:
+ // 103
+}
+
+func ExampleParse() {
+ var str string
+
+ str = `v1=m&v2=n`
+ rsStr, _ := gstr.Parse(str)
+ fmt.Println(rsStr)
+
+ str = `v[a][a]=m&v[a][b]=n`
+ rsStr, _ = gstr.Parse(str)
+ fmt.Println(rsStr)
+
+ // 目前不支持嵌套切片。
+ str = `v[][]=m&v[][]=n`
+ rsStr, err := gstr.Parse(str)
+ if err != nil {
+ fmt.Println("Error:", err)
+ }
+ fmt.Println(rsStr)
+
+ // 会产生错误
+ str = `v=m&v[a]=n`
+ rsStr, err = gstr.Parse(str)
+ if err != nil {
+ fmt.Println("Error:", err)
+ }
+ fmt.Println(rsStr)
+
+ str = `a .[[b=c`
+ rsStr, _ = gstr.Parse(str)
+ fmt.Println(rsStr)
+
+ // Output:
+ // map[v1:m v2:n]
+ // map[v:map[a:map[a:m b:n]]]
+ // map[v:map[]]
+ // Error: expected type 'map[string]interface{}' for key 'v', but got 'string'
+ // map[]
+ // map[a___[b:c]
+}
+
+func ExamplePos() {
+ var haystack, needle string
+ var startOffset int
+
+ haystack = `goframe_is Very Nice.to-use`
+ needle = `Nice`
+ rsStr := gstr.Pos(haystack, needle)
+ fmt.Println(rsStr)
+
+ startOffset = 16
+ rsStr = gstr.Pos(haystack, needle, startOffset)
+ fmt.Println(rsStr)
+
+ startOffset = 17
+ rsStr = gstr.Pos(haystack, needle, startOffset)
+ fmt.Println(rsStr)
+
+ needle = `nice`
+ rsStr = gstr.Pos(haystack, needle)
+ fmt.Println(rsStr)
+
+ // Output:
+ // 16
+ // 16
+ // -1
+ // -1
+}
+
+func ExamplePosI() {
+ var haystack, needle string
+ var startOffset int
+
+ haystack = `goframe_is Very Nice.to-use`
+ needle = `Nice`
+ rsStr := gstr.PosI(haystack, needle)
+ fmt.Println(rsStr)
+
+ startOffset = 16
+ rsStr = gstr.PosI(haystack, needle, startOffset)
+ fmt.Println(rsStr)
+
+ startOffset = 17
+ rsStr = gstr.PosI(haystack, needle, startOffset)
+ fmt.Println(rsStr)
+
+ needle = `nice`
+ rsStr = gstr.PosI(haystack, needle)
+ fmt.Println(rsStr)
+
+ // Output:
+ // 16
+ // 16
+ // -1
+ // 16
+}
+
+func ExamplePosIRune() {
+ var haystack, needle string
+ var startOffset int
+
+ haystack = `goframe_is Very Nice.to-use`
+ needle = `Nice`
+ rsStr := gstr.PosIRune(haystack, needle)
+ fmt.Println(rsStr)
+
+ startOffset = 16
+ rsStr = gstr.PosIRune(haystack, needle, startOffset)
+ fmt.Println(rsStr)
+
+ startOffset = 17
+ rsStr = gstr.PosIRune(haystack, needle, startOffset)
+ fmt.Println(rsStr)
+
+ needle = `nice`
+ rsStr = gstr.PosIRune(haystack, needle)
+ fmt.Println(rsStr)
+
+ // Output:
+ // 16
+ // 16
+ // -1
+ // 16
+}
+
+func ExamplePosR() {
+ var haystack, needle string
+ var startOffset int
+
+ haystack = `goframe_is Very Nice.to-use`
+ needle = `Nice`
+ rsStr := gstr.PosR(haystack, needle)
+ fmt.Println(rsStr)
+
+ startOffset = 16
+ rsStr = gstr.PosR(haystack, needle, startOffset)
+ fmt.Println(rsStr)
+
+ startOffset = 17
+ rsStr = gstr.PosR(haystack, needle, startOffset)
+ fmt.Println(rsStr)
+
+ needle = `nice`
+ rsStr = gstr.PosR(haystack, needle)
+ fmt.Println(rsStr)
+
+ // Output:
+ // 16
+ // 16
+ // -1
+ // -1
+}
+
+func ExamplePosRI() {
+ var haystack, needle string
+ var startOffset int
+
+ haystack = `goframe_is Very Nice.to-use`
+ needle = `Nice`
+ rsStr := gstr.PosRI(haystack, needle)
+ fmt.Println(rsStr)
+
+ startOffset = 16
+ rsStr = gstr.PosRI(haystack, needle, startOffset)
+ fmt.Println(rsStr)
+
+ startOffset = 17
+ rsStr = gstr.PosRI(haystack, needle, startOffset)
+ fmt.Println(rsStr)
+
+ needle = `nice`
+ rsStr = gstr.PosRI(haystack, needle)
+ fmt.Println(rsStr)
+
+ // Output:
+ // 16
+ // 16
+ // -1
+ // 16
+
+}
+
+func ExamplePosRIRune() {
+ var haystack, needle string
+ var startOffset int
+
+ haystack = `goframe_is Very Nice.to-use`
+ needle = `Nice`
+ rsStr := gstr.PosRIRune(haystack, needle)
+ fmt.Println(rsStr)
+
+ startOffset = 16
+ rsStr = gstr.PosRIRune(haystack, needle, startOffset)
+ fmt.Println(rsStr)
+
+ startOffset = 17
+ rsStr = gstr.PosRIRune(haystack, needle, startOffset)
+ fmt.Println(rsStr)
+
+ needle = `nice`
+ rsStr = gstr.PosRIRune(haystack, needle)
+ fmt.Println(rsStr)
+
+ // Output:
+ // 16
+ // 16
+ // -1
+ // 16
+}
+
+func ExamplePosRRune() {
+ var haystack, needle string
+ var startOffset int
+
+ haystack = `goframe_is Very Nice.to-use`
+ needle = `Nice`
+ rsStr := gstr.PosRRune(haystack, needle)
+ fmt.Println(rsStr)
+
+ startOffset = 16
+ rsStr = gstr.PosRRune(haystack, needle, startOffset)
+ fmt.Println(rsStr)
+
+ startOffset = 17
+ rsStr = gstr.PosRRune(haystack, needle, startOffset)
+ fmt.Println(rsStr)
+
+ needle = `nice`
+ rsStr = gstr.PosRRune(haystack, needle)
+ fmt.Println(rsStr)
+
+ // Output:
+ // 16
+ // 16
+ // -1
+ // -1
+}
+
+func ExamplePosRune() {
+ var haystack, needle string
+ var startOffset int
+
+ haystack = `goframe_is Very Nice.to-use`
+ needle = `Nice`
+ rsStr := gstr.PosRune(haystack, needle)
+ fmt.Println(rsStr)
+
+ startOffset = 16
+ rsStr = gstr.PosRune(haystack, needle, startOffset)
+ fmt.Println(rsStr)
+
+ startOffset = 17
+ rsStr = gstr.PosRune(haystack, needle, startOffset)
+ fmt.Println(rsStr)
+
+ needle = `nice`
+ rsStr = gstr.PosRune(haystack, needle)
+ fmt.Println(rsStr)
+
+ // Output:
+ // 16
+ // 16
+ // -1
+ // -1
+}
+
+func ExampleQuoteMeta() {
+ var str string
+ str = `.\+?[^]()`
+ rsStr := gstr.QuoteMeta(str)
+ fmt.Println(rsStr)
+
+ // Output:
+ // \.\\\+\?\[\^\]\(\)
+
+}
+
+func ExampleRepeat() {
+ var input string
+ var multiplier int
+ input = `goframe `
+ multiplier = 3
+ rsStr := gstr.Repeat(input, multiplier)
+ fmt.Println(rsStr)
+
+ // Output:
+ // goframe goframe goframe
+}
+
+func ExampleReplace() {
+ var origin, search, replace string
+ var count int
+
+ origin = `goframe_is_Very_Nice_to_use!`
+ search = `_`
+ replace = `+`
+ rsStr := gstr.Replace(origin, search, replace)
+ fmt.Println(rsStr)
+
+ count = 2
+ rsStr = gstr.Replace(origin, search, replace, count)
+ fmt.Println(rsStr)
+
+ // Output:
+ // goframe+is+Very+Nice+to+use!
+ // goframe+is+Very_Nice_to_use!
+}
+
+func ExampleReplaceByArray() {
+ var origin string
+ var array []string
+
+ origin = `Golang is Very Good`
+
+ array = []string{"o", "O"}
+ rsStr := gstr.ReplaceByArray(origin, array)
+ fmt.Println(rsStr)
+
+ array = []string{"Golang", "Goframe", "Good", "Nice"}
+ rsStr = gstr.ReplaceByArray(origin, array)
+ fmt.Println(rsStr)
+
+ // Output:
+ // GOlang is Very GOOd
+ // Goframe is Very Nice
+}
+
+func ExampleReplaceByMap() {
+ var origin string
+ var replaces map[string]string
+
+ origin = `Golang is Very Good`
+
+ replaces = map[string]string{
+ "Golang": "Goframe",
+ "Good": "Nice",
+ }
+ rsStr := gstr.ReplaceByMap(origin, replaces)
+ fmt.Println(rsStr)
+
+ replaces = map[string]string{
+ "golang": "Goframe",
+ "good": "Nice",
+ }
+ rsStr = gstr.ReplaceByMap(origin, replaces)
+ fmt.Println(rsStr)
+
+ // Output:
+ // Goframe is Very Nice
+ // Golang is Very Good
+}
+
+func ExampleReplaceI() {
+ var origin, search, replace string
+ var count int
+ origin = `goframe_is Very Nice.to-use`
+ search = `goframe`
+ replace = `golang`
+ count = 3
+ rsStr := gstr.ReplaceI(origin, search, replace, count)
+ fmt.Println(rsStr)
+
+ // Output:
+ // golang_is Very Nice.to-use
+}
+
+func ExampleReplaceIByArray() {
+ var origin string
+ var replaces []string
+ replaces = []string{
+ "frame",
+ "lang",
+ "nice",
+ "goframe",
+ }
+ origin = `goframe Nice`
+ rsStr := gstr.ReplaceIByArray(origin, replaces)
+ fmt.Println(rsStr)
+
+ // Output:
+ // golang goframe
+}
+
+func ExampleReplaceIByMap() {
+ var origin string
+ var replaces map[string]string
+
+ origin = `Golang is Very Good`
+
+ replaces = map[string]string{
+ "Golang": "Goframe",
+ "Good": "Nice",
+ }
+ rsStr := gstr.ReplaceIByMap(origin, replaces)
+ fmt.Println(rsStr)
+
+ replaces = map[string]string{
+ "golang": "Goframe",
+ "good": "Nice",
+ }
+ rsStr = gstr.ReplaceIByMap(origin, replaces)
+ fmt.Println(rsStr)
+
+ // Output:
+ // Goframe is Very Nice
+ // Goframe is Very Nice
+}
+
+func ExampleReverse() {
+ var str string
+ str = `Goframe-Nice`
+ rsStr := gstr.Reverse(str)
+ fmt.Println(rsStr)
+
+ // Output:
+ // eciN-emarfoG
+}
+
+func ExampleSearchArray() {
+ var a []string
+ var s string
+ a = []string{
+ "goframe",
+ "is",
+ "Very",
+ "Nice",
+ }
+ s = `goframe`
+ rsStr := gstr.SearchArray(a, s)
+ fmt.Println(rsStr)
+
+ s = `Very`
+ rsStr = gstr.SearchArray(a, s)
+ fmt.Println(rsStr)
+
+ s = `use`
+ rsStr = gstr.SearchArray(a, s)
+ fmt.Println(rsStr)
+
+ // Output:
+ // 0
+ // 2
+ // -1
+}
+
+func ExampleShuffle() {
+ var str string
+ str = `goframe_is Nice.`
+ rsStr := gstr.Shuffle(str)
+ fmt.Println(rsStr)
+
+ // May Output:
+ // e giNomescraf._i
+}
+
+func ExampleSimilarText() {
+ var first, second string
+ var percent *float64
+ first = `goframe_is`
+ second = `go-nice`
+ rsStr := gstr.SimilarText(first, second, percent)
+ fmt.Println(rsStr)
+
+ // Output:
+ // 3
+}
+
+func ExampleSoundex() {
+ var str string
+ var str2 string
+ str = `Euler`
+ str2 = `Ellery`
+ rsStr := gstr.Soundex(str)
+ rsStr2 := gstr.Soundex(str2)
+ fmt.Println(rsStr, rsStr2)
+
+ str = `Gauss`
+ str2 = `Ghosh`
+ rsStr = gstr.Soundex(str)
+ rsStr2 = gstr.Soundex(str2)
+ fmt.Println(rsStr, rsStr2)
+
+ str = `Lloyd`
+ str2 = `Ladd`
+ rsStr = gstr.Soundex(str)
+ rsStr2 = gstr.Soundex(str2)
+ fmt.Println(rsStr, rsStr2)
+
+ // Output:
+ // E406 E406
+ // G020 G020
+ // L030 L030
+}
+
+func ExampleSplit() {
+ var str, delimiter string
+ str = `GoFrame_Nice`
+ delimiter = `ame_N`
+ rsStr := gstr.Split(str, delimiter)
+ fmt.Println(rsStr)
+
+ // Output:
+ // [GoFr ice]
+}
+
+func ExampleSplitAndTrim() {
+ var str, delimiter, characterMask string
+ str = ` goframe, is, Very ,Nice ,to, use`
+ delimiter = `,`
+ characterMask = ` `
+ rsStr := gstr.SplitAndTrim(str, delimiter, characterMask)
+ fmt.Println(rsStr)
+
+ // Output:
+ // [goframe is Very Nice to use]
+}
+
+func ExampleStr() {
+ var haystack, needle string
+ haystack = `goframe nice`
+ needle = `fram`
+ rsStr := gstr.Str(haystack, needle)
+ fmt.Println(rsStr)
+
+ needle = `ame n`
+ rsStr = gstr.Str(haystack, needle)
+ fmt.Println(rsStr)
+
+ // Output:
+ // me nice
+ // nice
+}
+
+func ExampleStrEx() {
+ var haystack, needle string
+ haystack = `goframe_is Very Nice.to-use`
+ needle = `goframe`
+ rsStr := gstr.StrEx(haystack, needle)
+ fmt.Println(rsStr)
+
+ // Output:
+ // _is Very Nice.to-use
+}
+
+func ExampleStrLimit() {
+ var str, suffix string
+ var length int
+ str = `goframe_is Very Nice.to-use`
+ length = 8
+ suffix = "suffix"
+ rsStr := gstr.StrLimit(str, length, suffix)
+ fmt.Println(rsStr)
+
+ // Output:
+ // goframe_suffix
+}
+
+func ExampleStrLimitRune() {
+ var str, suffix string
+ var length int
+ str = `goframe_is Very Nice.to-use`
+ length = 7
+ suffix = "suffix"
+ rsStr := gstr.StrLimitRune(str, length, suffix)
+ fmt.Println(rsStr)
+
+ // Output:
+ // goframesuffix
+}
+
+func ExampleStrTill() {
+ var haystack, needle string
+
+ haystack = `ABCDEFGHIJKLMN`
+ needle = `C`
+ rsStr := gstr.StrTill(haystack, needle)
+ fmt.Println(rsStr)
+
+ needle = `E`
+ rsStr = gstr.StrTill(haystack, needle)
+ fmt.Println(rsStr)
+
+ needle = `G`
+ rsStr = gstr.StrTill(haystack, needle)
+ fmt.Println(rsStr)
+
+ // Output:
+ // ABC
+ // ABCDE
+ // ABCDEFG
+}
+
+func ExampleStrTillEx() {
+ var haystack, needle string
+ haystack = `goframe_is Very Nice.to-use`
+ needle = `frame`
+ rsStr := gstr.StrTillEx(haystack, needle)
+ fmt.Println(rsStr)
+
+ haystack = `goframe_is Very Nice.to-use`
+ needle = `to`
+ rsStr = gstr.StrTillEx(haystack, needle)
+ fmt.Println(rsStr)
+
+ // Output:
+ // go
+ // goframe_is Very Nice.
+}
+
+func ExampleStripSlashes() {
+ var str string
+ str = `goframe "is" Very Nice to use`
+ rsStr := gstr.StripSlashes(str)
+ fmt.Println(rsStr)
+
+ // Output:
+ // goframe "is" Very Nice to use
+}
+
+func ExampleSubStr() {
+ var str string
+ var start, length int
+ str = `GoFrame Nice`
+ start = 0
+ length = 2
+ subStr := gstr.SubStr(str, start, length)
+ fmt.Println(subStr)
+
+ str = `GoFrame Nice`
+ start = 5
+ length = 6
+ subStr = gstr.SubStr(str, start, length)
+ fmt.Println(subStr)
+
+ // Output:
+ // Go
+ // me Nic
+}
+
+func ExampleSubStrRune() {
+ var str string
+ var start, length int
+ str = `GoFrame Nice`
+ start = 5
+ length = 4
+ subStr := gstr.SubStrRune(str, start, length)
+ fmt.Println(subStr)
+
+ // Output:
+ // me N
+}
+
+func ExampleToLower() {
+ var s string
+ s = `GoFRAME_IS VERY NICE.TO-USE`
+ rsStr := gstr.ToLower(s)
+ fmt.Println(rsStr)
+
+ // Output:
+ // goframe_is very nice.to-use
+}
+
+func ExampleToUpper() {
+ var s string
+ s = `goframe_is Very Nice.to-use`
+ rsStr := gstr.ToUpper(s)
+ fmt.Println(rsStr)
+
+ // Output:
+ // GOFRAME_IS VERY NICE.TO-USE
+}
+
+func ExampleTrim() {
+ var str, characterMask string
+ str = `goframe_is Very Nice.to-use`
+ characterMask = "to-use"
+ rsStr := gstr.Trim(str, characterMask)
+ fmt.Println(rsStr)
+
+ // Output:
+ // goframe_is Very Nice.
+}
+
+func ExampleTrimAll() {
+ var str, characterMask string
+ str = `goframe`
+ characterMask = "g o e"
+ rsStr := gstr.TrimAll(str, characterMask)
+ fmt.Println(rsStr)
+
+ // Output:
+ // fram
+}
+
+func ExampleTrimLeft() {
+ var str, characterMask string
+ str = ` goframe is Very Nice to use`
+ characterMask = "goframeisVery"
+ rsStr := gstr.TrimLeft(str, characterMask)
+ fmt.Println(rsStr)
+
+ // Output:
+ // Nice to use
+}
+
+func ExampleTrimLeftStr() {
+ var str, cut string
+ var count int
+ str = ` goframe is Very Nice.to-use`
+ cut = " go"
+ count = 1
+ rsStr := gstr.TrimLeftStr(str, cut, count)
+ fmt.Println(rsStr)
+
+ // Output:
+ // frame is Very Nice.to-use
+}
+
+func ExampleTrimRight() {
+ var str, characterMask string
+ str = `goframe_is Very Nice to use `
+ rsStr := gstr.TrimRight(str)
+ fmt.Println(rsStr)
+
+ str = `goframe_is Very Nice to-use `
+ characterMask = "to-use" // []byte{"t", "o", "-", "u", "s", "e"}
+ rsStr = gstr.TrimRight(str, characterMask)
+ fmt.Println(rsStr)
+
+ // Output:
+ // goframe_is Very Nice to use
+ // goframe_is Very Nic
+}
+
+func ExampleTrimRightStr() {
+ var str, cut string
+ var count int
+ str = `aaa,bbb,ccc,ddd,eee,`
+ cut = ","
+ count = 1
+ rsStr := gstr.TrimRightStr(str, cut, count)
+ fmt.Println(rsStr)
+
+ str = `aaa,bbb,ccc,ddd,eee,,,,,`
+ cut = ","
+ count = -1
+ rsStr = gstr.TrimRightStr(str, cut, count)
+ fmt.Println(rsStr)
+
+ str = `aaa,bbb,ccc,ddd,eee,,,,, `
+ cut = ","
+ count = -1
+ rsStr = gstr.TrimRightStr(str, cut, count)
+ fmt.Println(rsStr)
+
+ // Output:
+ // aaa,bbb,ccc,ddd,eee
+ // aaa,bbb,ccc,ddd,eee
+ // aaa,bbb,ccc,ddd,eee,,,,,
+}
+
+func ExampleTrimStr() {
+ var str, cut string
+ var count int
+ str = `goframe is Very Nice to-use`
+ cut = "goframe"
+ rsStr := gstr.TrimStr(str, cut, count)
+ fmt.Println(rsStr)
+
+ cut = "use"
+ rsStr = gstr.TrimStr(str, cut, count)
+ fmt.Println(rsStr)
+
+ // Output:
+ // is Very Nice to-use
+ // goframe is Very Nice to-
+}
+
+func ExampleUcFirst() {
+ var s string
+ s = `goframe is very nice to use.`
+ rsStr := gstr.UcFirst(s)
+ fmt.Println(rsStr)
+
+ // Output:
+ // Goframe is very nice to use.
+}
+
+func ExampleUcWords() {
+ var str string
+ str = `goframe is very nice to use.`
+ rsStr := gstr.UcWords(str)
+ fmt.Println(rsStr)
+
+ // Output:
+ // Goframe Is Very Nice To Use.
+}
+
+func ExampleWordWrap() {
+ var str, br string
+ var width int
+ str = `A very long woooooooooooooooooord. and something`
+ width = 8
+ br = "\n"
+ rsStr := gstr.WordWrap(str, width, br)
+ fmt.Println(rsStr)
+
+ str = `The quick brown fox jumped over the lazy dog.`
+ width = 20
+ br = "
\n"
+ rsStr = gstr.WordWrap(str, width, br)
+ fmt.Printf("%v", rsStr)
+
+ // Output:
+ // A very
+ // long
+ // woooooooooooooooooord.
+ // and
+ // something
+ // The quick brown fox
+ // jumped over the lazy
+ // dog.
+}
From 0aabb7d99073e9ac87ed9bd434be423e75068aff Mon Sep 17 00:00:00 2001
From: iamyl <57165465@qq.com>
Date: Sat, 6 Nov 2021 04:41:08 +0800
Subject: [PATCH 07/17] update package gstr
---
text/gstr/gstr_z_all_example_test.go | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/text/gstr/gstr_z_all_example_test.go b/text/gstr/gstr_z_all_example_test.go
index 4a7cdd34d..8d7aee411 100644
--- a/text/gstr/gstr_z_all_example_test.go
+++ b/text/gstr/gstr_z_all_example_test.go
@@ -2,7 +2,7 @@ package gstr_test
import (
"fmt"
-
+
"github.com/gogf/gf/v2/text/gstr"
)
From 7f24f0637b988b8487aa37483a01163f2ac1f447 Mon Sep 17 00:00:00 2001
From: iamyl <57165465@qq.com>
Date: Wed, 10 Nov 2021 01:03:04 +0800
Subject: [PATCH 08/17] =?UTF-8?q?=E4=BF=AE=E6=94=B9=E4=BA=86=E9=83=A8?=
=?UTF-8?q?=E5=88=86=E7=A4=BA=E4=BE=8B?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
text/gstr/gstr_z_all_example_test.go | 262 ++++++++++++++++-----------
1 file changed, 153 insertions(+), 109 deletions(-)
diff --git a/text/gstr/gstr_z_all_example_test.go b/text/gstr/gstr_z_all_example_test.go
index 8d7aee411..f9717063f 100644
--- a/text/gstr/gstr_z_all_example_test.go
+++ b/text/gstr/gstr_z_all_example_test.go
@@ -2,7 +2,7 @@ package gstr_test
import (
"fmt"
-
+
"github.com/gogf/gf/v2/text/gstr"
)
@@ -17,11 +17,12 @@ func ExampleAddSlashes() {
}
func ExampleCaseCamel() {
- var str string
- str = `goframe_is very nice.to-use`
- rsStr := gstr.CaseCamel(str)
+ var (
+ str = `goframe_is very nice.to-use`
+ rsStr = gstr.CaseCamel(str)
+ )
fmt.Println(rsStr)
-
+
// Output:
// GoframeIsVeryNiceToUse
}
@@ -429,9 +430,9 @@ func ExampleHideStr() {
var percent int
var hide string
- str = `1234567890`
- percent = 30
- hide = `@`
+ str = `13800138000`
+ percent = 40
+ hide = `*`
rsStr := gstr.HideStr(str, percent, hide)
fmt.Println(rsStr)
@@ -441,16 +442,10 @@ func ExampleHideStr() {
rsStr = gstr.HideStr(str, percent, hide)
fmt.Println(rsStr)
- str = `ABCDEFGHIJ`
- percent = 10
- hide = `@`
- rsStr = gstr.HideStr(str, percent, hide)
- fmt.Println(rsStr)
// Output:
- // 1234@@@890
+ // 138****8000
// AA@@@@@@AA
- // ABCDE@GHIJ
}
func ExampleImplode() {
@@ -522,10 +517,15 @@ func ExampleIsNumeric() {
s = "aa66bb88"
rsStr = gstr.IsNumeric(s)
fmt.Println(rsStr)
+
+ s = "3.1415926"
+ rsStr = gstr.IsNumeric(s)
+ fmt.Println(rsStr)
// Output:
// true
// false
+ // true
}
func ExampleIsSubDomain() {
@@ -572,22 +572,47 @@ func ExampleJoinAny() {
arr1 := []string{"goframe", "is", "Very", "Nice", "to", "use"}
rsStr := gstr.JoinAny(arr1, sep)
fmt.Println(rsStr)
-
+
+
+ sep = `,`
+ arr2 := []int{ 99, 73, 85, 66 }
+ rsStr2 := gstr.JoinAny(arr2, sep)
+ fmt.Println(rsStr2)
+
+ sep = `,`
+ arr3 := []interface{}{
+ "Mary",
+ 18,
+ 99.5,
+ "
",
+ "Jack",
+ 19,
+ 66.5,
+ }
+ rsStr3 := gstr.JoinAny(arr3, sep)
+ fmt.Println(rsStr3)
+
+
sep = `|`
type StructA struct {
Name string
Age int
}
- arr2 := []StructA{
+ arr4 := []StructA{
{"Mary", 18},
{"Jack", 18},
{"Lucy", 18},
}
- rsStr = gstr.JoinAny(arr2, sep)
+ rsStr = gstr.JoinAny(arr4, sep)
fmt.Println(rsStr)
-
+
+
+
+
// Output:
// goframe@is@Very@Nice@to@use
+ // 99,73,85,66
+ // Mary,18,99.5,
,Jack,19,66.5
// {"Name":"Mary","Age":18}|{"Name":"Jack","Age":18}|{"Name":"Lucy","Age":18}
}
@@ -615,10 +640,15 @@ func ExampleLenRune() {
str = `123 4567 890`
rsStr = gstr.LenRune(str)
fmt.Println(rsStr)
+
+ str = `Goframe是一个非常好用的Go语言框架!`
+ rsStr = gstr.LenRune(str)
+ fmt.Println(rsStr)
// Output:
// 27
// 12
+ // 22
}
func ExampleLevenshtein() {
@@ -725,7 +755,7 @@ func ExampleParse() {
rsStr, _ = gstr.Parse(str)
fmt.Println(rsStr)
- // 目前不支持嵌套切片。
+ // The form of nested Slice is not yet supported.
str = `v[][]=m&v[][]=n`
rsStr, err := gstr.Parse(str)
if err != nil {
@@ -733,7 +763,7 @@ func ExampleParse() {
}
fmt.Println(rsStr)
- // 会产生错误
+ // This will produce an error.
str = `v=m&v[a]=n`
rsStr, err = gstr.Parse(str)
if err != nil {
@@ -818,7 +848,8 @@ func ExamplePosIRune() {
needle = `Nice`
rsStr := gstr.PosIRune(haystack, needle)
fmt.Println(rsStr)
-
+
+ haystack = `Goframe是个非常好用的框架.`
startOffset = 16
rsStr = gstr.PosIRune(haystack, needle, startOffset)
fmt.Println(rsStr)
@@ -833,9 +864,9 @@ func ExamplePosIRune() {
// Output:
// 16
- // 16
// -1
- // 16
+ // -1
+ // -1
}
func ExamplePosR() {
@@ -899,28 +930,30 @@ func ExamplePosRIRune() {
var haystack, needle string
var startOffset int
- haystack = `goframe_is Very Nice.to-use`
- needle = `Nice`
+ haystack = `Goframe是个非常好用的框架`
+ needle = `好用`
rsStr := gstr.PosRIRune(haystack, needle)
fmt.Println(rsStr)
-
+
+ needle = `框架`
startOffset = 16
rsStr = gstr.PosRIRune(haystack, needle, startOffset)
fmt.Println(rsStr)
-
+
+ needle = `golang`
startOffset = 17
rsStr = gstr.PosRIRune(haystack, needle, startOffset)
fmt.Println(rsStr)
- needle = `nice`
+ needle = `goframe`
rsStr = gstr.PosRIRune(haystack, needle)
fmt.Println(rsStr)
// Output:
- // 16
- // 16
+ // 11
+ // 14
// -1
- // 16
+ // 0
}
func ExamplePosRRune() {
@@ -935,12 +968,13 @@ func ExamplePosRRune() {
startOffset = 16
rsStr = gstr.PosRRune(haystack, needle, startOffset)
fmt.Println(rsStr)
-
+
+ haystack = `Goframe是中国开发者的福利.`
startOffset = 17
rsStr = gstr.PosRRune(haystack, needle, startOffset)
fmt.Println(rsStr)
- needle = `nice`
+ needle = `开发者`
rsStr = gstr.PosRRune(haystack, needle)
fmt.Println(rsStr)
@@ -948,7 +982,7 @@ func ExamplePosRRune() {
// 16
// 16
// -1
- // -1
+ // 10
}
func ExamplePosRune() {
@@ -959,7 +993,9 @@ func ExamplePosRune() {
needle = `Nice`
rsStr := gstr.PosRune(haystack, needle)
fmt.Println(rsStr)
-
+
+ haystack = `我喜欢Goframe框架`
+ needle = `框架`
startOffset = 16
rsStr = gstr.PosRune(haystack, needle, startOffset)
fmt.Println(rsStr)
@@ -968,13 +1004,13 @@ func ExamplePosRune() {
rsStr = gstr.PosRune(haystack, needle, startOffset)
fmt.Println(rsStr)
- needle = `nice`
+ needle = `goframe`
rsStr = gstr.PosRune(haystack, needle)
fmt.Println(rsStr)
// Output:
// 16
- // 16
+ // 10
// -1
// -1
}
@@ -984,9 +1020,14 @@ func ExampleQuoteMeta() {
str = `.\+?[^]()`
rsStr := gstr.QuoteMeta(str)
fmt.Println(rsStr)
-
+
+ str = `https://goframe.org/pages/viewpage.action?pageId=1114327`
+ rsStr = gstr.QuoteMeta(str)
+ fmt.Println(rsStr)
+
// Output:
// \.\\\+\?\[\^\]\(\)
+ // https://goframe\.org/pages/viewpage\.action\?pageId=1114327
}
@@ -1068,32 +1109,31 @@ func ExampleReplaceByMap() {
func ExampleReplaceI() {
var origin, search, replace string
var count int
- origin = `goframe_is Very Nice.to-use`
- search = `goframe`
+
+ origin = `goframe is Very Nice to use`
+ search = `Goframe`
replace = `golang`
count = 3
rsStr := gstr.ReplaceI(origin, search, replace, count)
fmt.Println(rsStr)
-
+
// Output:
- // golang_is Very Nice.to-use
+ // golang is Very Nice to use
}
func ExampleReplaceIByArray() {
- var origin string
- var replaces []string
- replaces = []string{
- "frame",
- "lang",
- "nice",
- "goframe",
- }
- origin = `goframe Nice`
- rsStr := gstr.ReplaceIByArray(origin, replaces)
- fmt.Println(rsStr)
-
+ fmt.Println(gstr.ReplaceIByArray(
+ `golang is very nice`,
+ []string{
+ "Golang",
+ "GoFrame",
+ "Nice",
+ "GOOD",
+ },
+ ))
+
// Output:
- // golang goframe
+ // GoFrame is very GOOD
}
func ExampleReplaceIByMap() {
@@ -1123,12 +1163,12 @@ func ExampleReplaceIByMap() {
func ExampleReverse() {
var str string
- str = `Goframe-Nice`
+ str = `123456`
rsStr := gstr.Reverse(str)
fmt.Println(rsStr)
// Output:
- // eciN-emarfoG
+ // 654321
}
func ExampleSearchArray() {
@@ -1210,12 +1250,12 @@ func ExampleSoundex() {
func ExampleSplit() {
var str, delimiter string
str = `GoFrame_Nice`
- delimiter = `ame_N`
+ delimiter = `_`
rsStr := gstr.Split(str, delimiter)
fmt.Println(rsStr)
// Output:
- // [GoFr ice]
+ // [GoFrame Nice]
}
func ExampleSplitAndTrim() {
@@ -1248,39 +1288,46 @@ func ExampleStr() {
func ExampleStrEx() {
var haystack, needle string
- haystack = `goframe_is Very Nice.to-use`
- needle = `goframe`
+ haystack = `ABCDEFG`
+ needle = `B`
rsStr := gstr.StrEx(haystack, needle)
fmt.Println(rsStr)
+
+
+ haystack = `ABCDEFG`
+ needle = `E`
+ rsStr = gstr.StrEx(haystack, needle)
+ fmt.Println(rsStr)
// Output:
- // _is Very Nice.to-use
+ // CDEFG
+ // FG
}
func ExampleStrLimit() {
var str, suffix string
var length int
- str = `goframe_is Very Nice.to-use`
+ str = `1234567890.png`
length = 8
- suffix = "suffix"
+ suffix = `.jpg`
rsStr := gstr.StrLimit(str, length, suffix)
fmt.Println(rsStr)
// Output:
- // goframe_suffix
+ // 12345678.jpg
}
func ExampleStrLimitRune() {
var str, suffix string
var length int
- str = `goframe_is Very Nice.to-use`
+ str = `Goframe是一个非常好用的Go语言框架.`
length = 7
- suffix = "suffix"
+ suffix = "好用"
rsStr := gstr.StrLimitRune(str, length, suffix)
fmt.Println(rsStr)
// Output:
- // goframesuffix
+ // Goframe好用
}
func ExampleStrTill() {
@@ -1307,144 +1354,141 @@ func ExampleStrTill() {
func ExampleStrTillEx() {
var haystack, needle string
- haystack = `goframe_is Very Nice.to-use`
- needle = `frame`
+ haystack = `abcdefg`
+ needle = `e`
rsStr := gstr.StrTillEx(haystack, needle)
fmt.Println(rsStr)
- haystack = `goframe_is Very Nice.to-use`
- needle = `to`
+ haystack = `abcdefg`
+ needle = `de`
rsStr = gstr.StrTillEx(haystack, needle)
fmt.Println(rsStr)
// Output:
- // go
- // goframe_is Very Nice.
+ // abcd
+ // abc
}
func ExampleStripSlashes() {
var str string
- str = `goframe "is" Very Nice to use`
+ str = `C:\\windows\\GoFrame\\test`
rsStr := gstr.StripSlashes(str)
fmt.Println(rsStr)
// Output:
- // goframe "is" Very Nice to use
+ // C:\windows\GoFrame\test
}
func ExampleSubStr() {
var str string
var start, length int
- str = `GoFrame Nice`
+
+ str = `ABCDEFGHIJK`
+
start = 0
length = 2
subStr := gstr.SubStr(str, start, length)
fmt.Println(subStr)
- str = `GoFrame Nice`
+
start = 5
length = 6
subStr = gstr.SubStr(str, start, length)
fmt.Println(subStr)
// Output:
- // Go
- // me Nic
+ // AB
+ // FGHIJK
}
func ExampleSubStrRune() {
var str string
var start, length int
- str = `GoFrame Nice`
+ str = `123456789`
start = 5
length = 4
subStr := gstr.SubStrRune(str, start, length)
fmt.Println(subStr)
// Output:
- // me N
+ // 6789
}
func ExampleToLower() {
var s string
- s = `GoFRAME_IS VERY NICE.TO-USE`
+ s = `GOFRAME IS VERY NICE TO USE`
rsStr := gstr.ToLower(s)
fmt.Println(rsStr)
// Output:
- // goframe_is very nice.to-use
+ // goframe is very nice to use
}
func ExampleToUpper() {
var s string
- s = `goframe_is Very Nice.to-use`
+ s = `goframe is very nice to use`
rsStr := gstr.ToUpper(s)
fmt.Println(rsStr)
// Output:
- // GOFRAME_IS VERY NICE.TO-USE
+ // GOFRAME IS VERY NICE TO USE
}
func ExampleTrim() {
var str, characterMask string
- str = `goframe_is Very Nice.to-use`
- characterMask = "to-use"
+ str = `.abc.def..`
+ characterMask = "."
rsStr := gstr.Trim(str, characterMask)
fmt.Println(rsStr)
// Output:
- // goframe_is Very Nice.
+ // abc.def
}
func ExampleTrimAll() {
var str, characterMask string
- str = `goframe`
- characterMask = "g o e"
+ str = `.abc.def...`
+ characterMask = "."
rsStr := gstr.TrimAll(str, characterMask)
fmt.Println(rsStr)
// Output:
- // fram
+ // abcdef
}
func ExampleTrimLeft() {
var str, characterMask string
- str = ` goframe is Very Nice to use`
- characterMask = "goframeisVery"
+ str = `..abc.def.. `
+ characterMask = "."
rsStr := gstr.TrimLeft(str, characterMask)
fmt.Println(rsStr)
// Output:
- // Nice to use
+ // abc.def..
}
func ExampleTrimLeftStr() {
var str, cut string
var count int
- str = ` goframe is Very Nice.to-use`
- cut = " go"
- count = 1
+ str = `...abcd..efg...`
+ cut = "."
+ count = 2
rsStr := gstr.TrimLeftStr(str, cut, count)
fmt.Println(rsStr)
// Output:
- // frame is Very Nice.to-use
+ // .abcd..efg...
}
func ExampleTrimRight() {
var str, characterMask string
- str = `goframe_is Very Nice to use `
- rsStr := gstr.TrimRight(str)
- fmt.Println(rsStr)
-
- str = `goframe_is Very Nice to-use `
- characterMask = "to-use" // []byte{"t", "o", "-", "u", "s", "e"}
- rsStr = gstr.TrimRight(str, characterMask)
+ str = `abcdef `
+ characterMask = "def" // []byte{"d", "e", "f"}
+ rsStr := gstr.TrimRight(str, characterMask)
fmt.Println(rsStr)
// Output:
- // goframe_is Very Nice to use
- // goframe_is Very Nic
+ // abc
}
func ExampleTrimRightStr() {
From 836be74d1363d5c147b58dea37f0f48258acf83b Mon Sep 17 00:00:00 2001
From: iamyl <57165465@qq.com>
Date: Wed, 10 Nov 2021 01:12:22 +0800
Subject: [PATCH 09/17] =?UTF-8?q?=E4=BF=AE=E6=94=B9=E7=A4=BA=E4=BE=8B?=
=?UTF-8?q?=E4=B8=AD=E7=BB=93=E6=9E=9C=E4=B8=BAmap=E8=BE=93=E5=87=BA?=
=?UTF-8?q?=E7=9A=84=E5=9C=B0=E6=96=B9=E5=A2=9E=E5=8A=A0May?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
text/gstr/gstr_z_all_example_test.go | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/text/gstr/gstr_z_all_example_test.go b/text/gstr/gstr_z_all_example_test.go
index f9717063f..4c5d225f5 100644
--- a/text/gstr/gstr_z_all_example_test.go
+++ b/text/gstr/gstr_z_all_example_test.go
@@ -315,7 +315,7 @@ func ExampleCountChars() {
rsStr = gstr.CountChars(str, noSpace)
fmt.Println(rsStr)
- // Output:
+ // May Output:
// map[ :2 -:1 .:1 N:1 V:1 _:1 a:1 c:1 e:4 f:1 g:1 i:2 m:1 o:2 r:2 s:2 t:1 u:1 y:1]
// map[-:1 .:1 N:1 V:1 _:1 a:1 c:1 e:4 f:1 g:1 i:2 m:1 o:2 r:2 s:2 t:1 u:1 y:1]
}
From f889df8d50e5c51b909ad95022e96408eeb5f5d4 Mon Sep 17 00:00:00 2001
From: iamyl <57165465@qq.com>
Date: Wed, 10 Nov 2021 01:27:59 +0800
Subject: [PATCH 10/17] =?UTF-8?q?go=20fmt=20=E6=A0=BC=E5=BC=8F=E5=8C=96?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
text/gstr/gstr_z_all_example_test.go | 53 ++++++++++++----------------
1 file changed, 23 insertions(+), 30 deletions(-)
diff --git a/text/gstr/gstr_z_all_example_test.go b/text/gstr/gstr_z_all_example_test.go
index 4c5d225f5..07ab60b34 100644
--- a/text/gstr/gstr_z_all_example_test.go
+++ b/text/gstr/gstr_z_all_example_test.go
@@ -2,7 +2,7 @@ package gstr_test
import (
"fmt"
-
+
"github.com/gogf/gf/v2/text/gstr"
)
@@ -22,7 +22,7 @@ func ExampleCaseCamel() {
rsStr = gstr.CaseCamel(str)
)
fmt.Println(rsStr)
-
+
// Output:
// GoframeIsVeryNiceToUse
}
@@ -318,6 +318,7 @@ func ExampleCountChars() {
// May Output:
// map[ :2 -:1 .:1 N:1 V:1 _:1 a:1 c:1 e:4 f:1 g:1 i:2 m:1 o:2 r:2 s:2 t:1 u:1 y:1]
// map[-:1 .:1 N:1 V:1 _:1 a:1 c:1 e:4 f:1 g:1 i:2 m:1 o:2 r:2 s:2 t:1 u:1 y:1]
+
}
func ExampleCountI() {
@@ -442,7 +443,6 @@ func ExampleHideStr() {
rsStr = gstr.HideStr(str, percent, hide)
fmt.Println(rsStr)
-
// Output:
// 138****8000
// AA@@@@@@AA
@@ -517,7 +517,7 @@ func ExampleIsNumeric() {
s = "aa66bb88"
rsStr = gstr.IsNumeric(s)
fmt.Println(rsStr)
-
+
s = "3.1415926"
rsStr = gstr.IsNumeric(s)
fmt.Println(rsStr)
@@ -572,13 +572,12 @@ func ExampleJoinAny() {
arr1 := []string{"goframe", "is", "Very", "Nice", "to", "use"}
rsStr := gstr.JoinAny(arr1, sep)
fmt.Println(rsStr)
-
-
+
sep = `,`
- arr2 := []int{ 99, 73, 85, 66 }
+ arr2 := []int{99, 73, 85, 66}
rsStr2 := gstr.JoinAny(arr2, sep)
fmt.Println(rsStr2)
-
+
sep = `,`
arr3 := []interface{}{
"Mary",
@@ -591,8 +590,7 @@ func ExampleJoinAny() {
}
rsStr3 := gstr.JoinAny(arr3, sep)
fmt.Println(rsStr3)
-
-
+
sep = `|`
type StructA struct {
Name string
@@ -605,10 +603,7 @@ func ExampleJoinAny() {
}
rsStr = gstr.JoinAny(arr4, sep)
fmt.Println(rsStr)
-
-
-
-
+
// Output:
// goframe@is@Very@Nice@to@use
// 99,73,85,66
@@ -640,7 +635,7 @@ func ExampleLenRune() {
str = `123 4567 890`
rsStr = gstr.LenRune(str)
fmt.Println(rsStr)
-
+
str = `Goframe是一个非常好用的Go语言框架!`
rsStr = gstr.LenRune(str)
fmt.Println(rsStr)
@@ -848,7 +843,7 @@ func ExamplePosIRune() {
needle = `Nice`
rsStr := gstr.PosIRune(haystack, needle)
fmt.Println(rsStr)
-
+
haystack = `Goframe是个非常好用的框架.`
startOffset = 16
rsStr = gstr.PosIRune(haystack, needle, startOffset)
@@ -934,12 +929,12 @@ func ExamplePosRIRune() {
needle = `好用`
rsStr := gstr.PosRIRune(haystack, needle)
fmt.Println(rsStr)
-
+
needle = `框架`
startOffset = 16
rsStr = gstr.PosRIRune(haystack, needle, startOffset)
fmt.Println(rsStr)
-
+
needle = `golang`
startOffset = 17
rsStr = gstr.PosRIRune(haystack, needle, startOffset)
@@ -968,7 +963,7 @@ func ExamplePosRRune() {
startOffset = 16
rsStr = gstr.PosRRune(haystack, needle, startOffset)
fmt.Println(rsStr)
-
+
haystack = `Goframe是中国开发者的福利.`
startOffset = 17
rsStr = gstr.PosRRune(haystack, needle, startOffset)
@@ -993,7 +988,7 @@ func ExamplePosRune() {
needle = `Nice`
rsStr := gstr.PosRune(haystack, needle)
fmt.Println(rsStr)
-
+
haystack = `我喜欢Goframe框架`
needle = `框架`
startOffset = 16
@@ -1020,11 +1015,11 @@ func ExampleQuoteMeta() {
str = `.\+?[^]()`
rsStr := gstr.QuoteMeta(str)
fmt.Println(rsStr)
-
+
str = `https://goframe.org/pages/viewpage.action?pageId=1114327`
rsStr = gstr.QuoteMeta(str)
fmt.Println(rsStr)
-
+
// Output:
// \.\\\+\?\[\^\]\(\)
// https://goframe\.org/pages/viewpage\.action\?pageId=1114327
@@ -1109,14 +1104,14 @@ func ExampleReplaceByMap() {
func ExampleReplaceI() {
var origin, search, replace string
var count int
-
+
origin = `goframe is Very Nice to use`
search = `Goframe`
replace = `golang`
count = 3
rsStr := gstr.ReplaceI(origin, search, replace, count)
fmt.Println(rsStr)
-
+
// Output:
// golang is Very Nice to use
}
@@ -1131,7 +1126,7 @@ func ExampleReplaceIByArray() {
"GOOD",
},
))
-
+
// Output:
// GoFrame is very GOOD
}
@@ -1292,8 +1287,7 @@ func ExampleStrEx() {
needle = `B`
rsStr := gstr.StrEx(haystack, needle)
fmt.Println(rsStr)
-
-
+
haystack = `ABCDEFG`
needle = `E`
rsStr = gstr.StrEx(haystack, needle)
@@ -1382,15 +1376,14 @@ func ExampleStripSlashes() {
func ExampleSubStr() {
var str string
var start, length int
-
+
str = `ABCDEFGHIJK`
-
+
start = 0
length = 2
subStr := gstr.SubStr(str, start, length)
fmt.Println(subStr)
-
start = 5
length = 6
subStr = gstr.SubStr(str, start, length)
From 4b0a8f81d51118eb93d282dfd6a2154731118d36 Mon Sep 17 00:00:00 2001
From: iamyl <57165465@qq.com>
Date: Wed, 10 Nov 2021 01:47:03 +0800
Subject: [PATCH 11/17] =?UTF-8?q?=E4=BF=AE=E6=94=B9=E4=BA=86ExampleEqual?=
=?UTF-8?q?=20=E7=A4=BA=E4=BE=8B=E7=9A=84=E5=AF=B9=E6=AF=94=E5=80=BC?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
text/gstr/gstr_z_all_example_test.go | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/text/gstr/gstr_z_all_example_test.go b/text/gstr/gstr_z_all_example_test.go
index 07ab60b34..ce97e2c69 100644
--- a/text/gstr/gstr_z_all_example_test.go
+++ b/text/gstr/gstr_z_all_example_test.go
@@ -356,7 +356,7 @@ func ExampleEqual() {
fmt.Println(rsStr)
a = `A`
- b = `B`
+ b = `A`
rsStr = gstr.Equal(a, b)
fmt.Println(rsStr)
@@ -367,7 +367,7 @@ func ExampleEqual() {
// Output:
// true
- // false
+ // true
// false
}
From 741a7906604f0a0cc95d408dd25711b780d736e5 Mon Sep 17 00:00:00 2001
From: iamyl <57165465@qq.com>
Date: Fri, 12 Nov 2021 01:37:27 +0800
Subject: [PATCH 12/17] =?UTF-8?q?=E4=BF=AE=E6=94=B9=E4=BA=86=E7=A4=BA?=
=?UTF-8?q?=E4=BE=8B=E7=9A=84=E8=A1=A8=E7=8E=B0=E6=A0=BC=E5=BC=8F?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
text/gstr/gstr_z_all_example_test.go | 2122 ++++++++++++++++----------
1 file changed, 1312 insertions(+), 810 deletions(-)
diff --git a/text/gstr/gstr_z_all_example_test.go b/text/gstr/gstr_z_all_example_test.go
index ce97e2c69..cfb05c8d9 100644
--- a/text/gstr/gstr_z_all_example_test.go
+++ b/text/gstr/gstr_z_all_example_test.go
@@ -7,9 +7,11 @@ import (
)
func ExampleAddSlashes() {
- var str string
- str = `'aa'"bb"cc\r\n\d\t`
- rsStr := gstr.AddSlashes(str)
+ var (
+ str = `'aa'"bb"cc\r\n\d\t`
+ rsStr = gstr.AddSlashes(str)
+ )
+
fmt.Println(rsStr)
// Output:
@@ -28,9 +30,11 @@ func ExampleCaseCamel() {
}
func ExampleCaseCamelLower() {
- var str string
- str = `goframe_is very nice.to-use`
- rsStr := gstr.CaseCamelLower(str)
+ var (
+ str = `goframe_is very nice.to-use`
+ rsStr = gstr.CaseCamelLower(str)
+ )
+
fmt.Println(rsStr)
// Output:
@@ -38,11 +42,11 @@ func ExampleCaseCamelLower() {
}
func ExampleCaseDelimited() {
- var str string
- var del uint8
- str = `goframe_is_very-nice.to-use`
- del = 35
- rsStr := gstr.CaseDelimited(str, del)
+ var (
+ str = `goframe_is_very-nice.to-use`
+ del = uint8(35)
+ rsStr = gstr.CaseDelimited(str, del)
+ )
fmt.Println(rsStr)
// Output:
@@ -50,23 +54,34 @@ func ExampleCaseDelimited() {
}
func ExampleCaseDelimitedScreaming() {
- var str string
- var del uint8
- var screaming bool
- str = `goframe_is Very Nice.to-use`
- del = 35
- screaming = true
- rsStr := gstr.CaseDelimitedScreaming(str, del, screaming)
- fmt.Println(rsStr)
+ {
+ var (
+ str = `goframe_is Very Nice.to-use`
+ del = uint8(35)
+ rsStr = gstr.CaseDelimitedScreaming(str, del, true)
+ )
+ fmt.Println(rsStr)
+ }
+
+ {
+ var (
+ str = `GOFRAME_IS VERY NICE.TO-USE`
+ del = uint8(35)
+ rsStr = gstr.CaseDelimitedScreaming(str, del, false)
+ )
+ fmt.Println(rsStr)
+ }
// Output:
// GOFRAME#IS#VERY#NICE#TO#USE
+ // goframe#is#very#nice#to#use
}
func ExampleCaseKebab() {
- var str string
- str = `goframe_is Very Nice.to-use`
- rsStr := gstr.CaseKebab(str)
+ var (
+ str = `goframe_is Very Nice.to-use`
+ rsStr = gstr.CaseKebab(str)
+ )
fmt.Println(rsStr)
// Output:
@@ -74,9 +89,10 @@ func ExampleCaseKebab() {
}
func ExampleCaseKebabScreaming() {
- var str string
- str = `goframe_is Very Nice.to-use`
- rsStr := gstr.CaseKebabScreaming(str)
+ var (
+ str = `goframe_is Very Nice.to-use`
+ rsStr = gstr.CaseKebabScreaming(str)
+ )
fmt.Println(rsStr)
// Output:
@@ -84,9 +100,11 @@ func ExampleCaseKebabScreaming() {
}
func ExampleCaseSnake() {
- var str string
- str = `goframe_is Very Nice.to-use`
- rsStr := gstr.CaseSnake(str)
+ var (
+ str = `goframe_is Very Nice.to-use`
+ rsStr = gstr.CaseSnake(str)
+ )
+
fmt.Println(rsStr)
// Output:
@@ -94,9 +112,11 @@ func ExampleCaseSnake() {
}
func ExampleCaseSnakeFirstUpper() {
- var str string
- str = `GoframeIsVeryNiceToUse`
- rsStr := gstr.CaseSnakeFirstUpper(str)
+ var (
+ str = `GoframeIsVeryNiceToUse`
+ rsStr = gstr.CaseSnakeFirstUpper(str)
+ )
+
fmt.Println(rsStr)
// Output:
@@ -104,9 +124,11 @@ func ExampleCaseSnakeFirstUpper() {
}
func ExampleCaseSnakeScreaming() {
- var str string
- str = `goframe_is Very Nice.to-use`
- rsStr := gstr.CaseSnakeScreaming(str)
+ var (
+ str = `goframe_is Very Nice.to-use`
+ rsStr = gstr.CaseSnakeScreaming(str)
+ )
+
fmt.Println(rsStr)
// Output:
@@ -114,9 +136,10 @@ func ExampleCaseSnakeScreaming() {
}
func ExampleChr() {
- var ascii int
- ascii = 65
- rsStr := gstr.Chr(ascii)
+ var (
+ ascii = 65
+ rsStr = gstr.Chr(ascii)
+ )
fmt.Println(rsStr)
// Output:
@@ -124,26 +147,36 @@ func ExampleChr() {
}
func ExampleChunkSplit() {
- var body string
- var chunkLen int
- var end string
- body = `1234`
- chunkLen = 2
- end = "#"
- rsStr := gstr.ChunkSplit(body, chunkLen, end)
- fmt.Println(rsStr)
+ {
+ var (
+ body = `1234`
+ chunkLen = 2
+ end = "#"
+ rsStr = gstr.ChunkSplit(body, chunkLen, end)
+ )
- body = `我爱Goframe`
- chunkLen = 1
- end = "-"
- rsStr = gstr.ChunkSplit(body, chunkLen, end)
- fmt.Println(rsStr)
+ fmt.Println(rsStr)
+ }
- body = `1234`
- chunkLen = 1
- end = ""
- rsStr = gstr.ChunkSplit(body, chunkLen, end)
- fmt.Println(rsStr)
+ {
+ var (
+ body = `我爱Goframe`
+ chunkLen = 1
+ end = "-"
+ rsStr = gstr.ChunkSplit(body, chunkLen, end)
+ )
+ fmt.Println(rsStr)
+ }
+
+ {
+ var (
+ body = `1234`
+ chunkLen = 1
+ end = ""
+ rsStr = gstr.ChunkSplit(body, chunkLen, end)
+ )
+ fmt.Println(rsStr)
+ }
// May Output:
// 12#34#
@@ -152,23 +185,33 @@ func ExampleChunkSplit() {
}
func ExampleCompare() {
- var a string
- var b string
+ {
+ var (
+ a = "C"
+ b = "C"
+ rsStr = gstr.Compare(a, b)
+ )
- a = "C"
- b = "C"
- rsStr := gstr.Compare(a, b)
- fmt.Println(rsStr)
+ fmt.Println(rsStr)
+ }
- a = "A"
- b = "B"
- rsStr = gstr.Compare(a, b)
- fmt.Println(rsStr)
+ {
+ var (
+ a = "A"
+ b = "B"
+ rsStr = gstr.Compare(a, b)
+ )
+ fmt.Println(rsStr)
+ }
- a = "C"
- b = "B"
- rsStr = gstr.Compare(a, b)
- fmt.Println(rsStr)
+ {
+ var (
+ a = "C"
+ b = "B"
+ rsStr = gstr.Compare(a, b)
+ )
+ fmt.Println(rsStr)
+ }
// Output:
// 0
@@ -177,24 +220,34 @@ func ExampleCompare() {
}
func ExampleCompareVersion() {
- var a string
- var b string
+ {
+ var (
+ a = "v2.11.9"
+ b = "v2.10.8"
- a = "v2.11.9"
- b = "v2.10.8"
+ rsStr = gstr.CompareVersion(a, b)
+ )
- rsStr := gstr.CompareVersion(a, b)
- fmt.Println(rsStr)
+ fmt.Println(rsStr)
+ }
- a = "A.10.8"
- b = "A.19.7"
- rsStr = gstr.CompareVersion(a, b)
- fmt.Println(rsStr)
+ {
+ var (
+ a = "A.10.8"
+ b = "A.19.7"
+ rsStr = gstr.CompareVersion(a, b)
+ )
+ fmt.Println(rsStr)
+ }
- a = "2.8.beta"
- b = "2.8"
- rsStr = gstr.CompareVersion(a, b)
- fmt.Println(rsStr)
+ {
+ var (
+ a = "2.8.beta"
+ b = "2.8"
+ rsStr = gstr.CompareVersion(a, b)
+ )
+ fmt.Println(rsStr)
+ }
// Output:
// 1
@@ -203,23 +256,33 @@ func ExampleCompareVersion() {
}
func ExampleCompareVersionGo() {
- var a string
- var b string
- a = "v2.11.9"
- b = "v2.10.8"
- rsStr := gstr.CompareVersionGo(a, b)
- fmt.Println(rsStr)
+ {
+ var (
+ a = "v2.11.9"
+ b = "v2.10.8"
+ rsStr = gstr.CompareVersionGo(a, b)
+ )
+ fmt.Println(rsStr)
+ }
- a = "v0.0.2-20180626092158-b2ccc119800e"
- b = "v1.0.1-20190626092158-b2ccc519800e"
- rsStr = gstr.CompareVersionGo(a, b)
- fmt.Println(rsStr)
+ {
+ var (
+ a = "v0.0.2-20180626092158-b2ccc119800e"
+ b = "v1.0.1-20190626092158-b2ccc519800e"
+ rsStr = gstr.CompareVersionGo(a, b)
+ )
+ fmt.Println(rsStr)
+ }
- a = "v4.20.1"
- b = "v4.20.1+incompatible"
- rsStr = gstr.CompareVersionGo(a, b)
- fmt.Println(rsStr)
+ {
+ var (
+ a = "v4.20.1"
+ b = "v4.20.1+incompatible"
+ rsStr = gstr.CompareVersionGo(a, b)
+ )
+ fmt.Println(rsStr)
+ }
// Output:
// 1
@@ -228,15 +291,24 @@ func ExampleCompareVersionGo() {
}
func ExampleContains() {
- var str, substr string
- str = `goframe_is Very Nice.to-use`
- substr = `goframe`
- rsStr := gstr.Contains(str, substr)
- fmt.Println(rsStr)
+ {
+ var (
+ str = `goframe_is Very Nice.to-use`
+ substr = `goframe`
+ rsStr = gstr.Contains(str, substr)
+ )
- substr = `Goframe`
- rsStr = gstr.Contains(str, substr)
- fmt.Println(rsStr)
+ fmt.Println(rsStr)
+ }
+
+ {
+ var (
+ str = `goframe_is Very Nice.to-use`
+ substr = `Goframe`
+ rsStr = gstr.Contains(str, substr)
+ )
+ fmt.Println(rsStr)
+ }
// Output:
// true
@@ -244,19 +316,33 @@ func ExampleContains() {
}
func ExampleContainsAny() {
- var s, chars string
- s = `goframe_is Very Nice.to-use`
- chars = "g"
- rsStr := gstr.ContainsAny(s, chars)
- fmt.Println(rsStr)
+ {
+ var (
+ s = `goframe_is Very Nice.to-use`
+ chars = "g"
+ rsStr = gstr.ContainsAny(s, chars)
+ )
- chars = "G"
- rsStr = gstr.ContainsAny(s, chars)
- fmt.Println(rsStr)
+ fmt.Println(rsStr)
+ }
- chars = "Nice"
- rsStr = gstr.ContainsAny(s, chars)
- fmt.Println(rsStr)
+ {
+ var (
+ s = `goframe_is Very Nice.to-use`
+ chars = "G"
+ rsStr = gstr.ContainsAny(s, chars)
+ )
+ fmt.Println(rsStr)
+ }
+
+ {
+ var (
+ s = `goframe_is Very Nice.to-use`
+ chars = "Nice"
+ rsStr = gstr.ContainsAny(s, chars)
+ )
+ fmt.Println(rsStr)
+ }
// Output:
// true
@@ -265,20 +351,33 @@ func ExampleContainsAny() {
}
func ExampleContainsI() {
- var str, substr string
- str = `goframe_is Very Nice.to-use`
+ {
+ var (
+ str = `goframe_is Very Nice.to-use`
+ substr = "go"
+ rsStr = gstr.ContainsI(str, substr)
+ )
- substr = "go"
- rsStr := gstr.ContainsI(str, substr)
- fmt.Println(rsStr)
+ fmt.Println(rsStr)
+ }
- substr = "Go"
- rsStr = gstr.ContainsI(str, substr)
- fmt.Println(rsStr)
+ {
+ var (
+ str = `goframe_is Very Nice.to-use`
+ substr = "Go"
+ rsStr = gstr.ContainsI(str, substr)
+ )
+ fmt.Println(rsStr)
+ }
- substr = "Golang"
- rsStr = gstr.ContainsI(str, substr)
- fmt.Println(rsStr)
+ {
+ var (
+ str = `goframe_is Very Nice.to-use`
+ substr = "Golang"
+ rsStr = gstr.ContainsI(str, substr)
+ )
+ fmt.Println(rsStr)
+ }
// Output:
// true
@@ -287,16 +386,23 @@ func ExampleContainsI() {
}
func ExampleCount() {
- var str, substr string
- str = `goframe_is Very Nice.to-use`
+ {
+ var (
+ str = `goframe_is Very Nice.to-use`
+ substr = "goframe"
+ rsStr = gstr.Count(str, substr)
+ )
+ fmt.Println(rsStr)
+ }
- substr = "goframe"
- rsStr := gstr.Count(str, substr)
- fmt.Println(rsStr)
-
- substr = "golang"
- rsStr = gstr.Count(str, substr)
- fmt.Println(rsStr)
+ {
+ var (
+ str = `goframe_is Very Nice.to-use`
+ substr = "golang"
+ rsStr = gstr.Count(str, substr)
+ )
+ fmt.Println(rsStr)
+ }
// Output:
// 1
@@ -304,16 +410,21 @@ func ExampleCount() {
}
func ExampleCountChars() {
- var str string
- var noSpace bool
- str = `goframe_is Very Nice.to-use`
+ {
+ var (
+ str = `goframe_is Very Nice.to-use`
+ rsStr = gstr.CountChars(str)
+ )
+ fmt.Println(rsStr)
+ }
- rsStr := gstr.CountChars(str)
- fmt.Println(rsStr)
-
- noSpace = true
- rsStr = gstr.CountChars(str, noSpace)
- fmt.Println(rsStr)
+ {
+ var (
+ str = `goframe_is Very Nice.to-use`
+ rsStr = gstr.CountChars(str, true)
+ )
+ fmt.Println(rsStr)
+ }
// May Output:
// map[ :2 -:1 .:1 N:1 V:1 _:1 a:1 c:1 e:4 f:1 g:1 i:2 m:1 o:2 r:2 s:2 t:1 u:1 y:1]
@@ -322,16 +433,24 @@ func ExampleCountChars() {
}
func ExampleCountI() {
- var s, substr string
- s = `goframe_is Very Nice.to-use`
+ {
+ var (
+ s = `goframe_is Very Nice.to-use`
+ substr = "goframe"
+ rsStr = gstr.CountI(s, substr)
+ )
- substr = "goframe"
- rsStr := gstr.CountI(s, substr)
- fmt.Println(rsStr)
+ fmt.Println(rsStr)
+ }
- substr = "golang"
- rsStr = gstr.CountI(s, substr)
- fmt.Println(rsStr)
+ {
+ var (
+ s = `goframe_is Very Nice.to-use`
+ substr = "golang"
+ rsStr = gstr.CountI(s, substr)
+ )
+ fmt.Println(rsStr)
+ }
// Output:
// 1
@@ -339,9 +458,11 @@ func ExampleCountI() {
}
func ExampleCountWords() {
- var str string
- str = `goframe is Very Nice to use ! goframe Very Nice !`
- rsStr := gstr.CountWords(str)
+ var (
+ str = `goframe is Very Nice to use ! goframe Very Nice !`
+ rsStr = gstr.CountWords(str)
+ )
+
fmt.Println(rsStr)
// Output:
@@ -349,21 +470,33 @@ func ExampleCountWords() {
}
func ExampleEqual() {
- var a, b string
- a = `A`
- b = `a`
- rsStr := gstr.Equal(a, b)
- fmt.Println(rsStr)
+ {
+ var (
+ a = `A`
+ b = `a`
+ rsStr = gstr.Equal(a, b)
+ )
- a = `A`
- b = `A`
- rsStr = gstr.Equal(a, b)
- fmt.Println(rsStr)
+ fmt.Println(rsStr)
+ }
- a = `C`
- b = `B`
- rsStr = gstr.Equal(a, b)
- fmt.Println(rsStr)
+ {
+ var (
+ a = `A`
+ b = `A`
+ rsStr = gstr.Equal(a, b)
+ )
+ fmt.Println(rsStr)
+ }
+
+ {
+ var (
+ a = `C`
+ b = `B`
+ rsStr = gstr.Equal(a, b)
+ )
+ fmt.Println(rsStr)
+ }
// Output:
// true
@@ -372,10 +505,12 @@ func ExampleEqual() {
}
func ExampleExplode() {
- var delimiter, str string
- str = `goframe_is_Very_Nice_to_use`
- delimiter = "_"
- rsStr := gstr.Explode(delimiter, str)
+ var (
+ str = `goframe_is_Very_Nice_to_use`
+ delimiter = "_"
+ rsStr = gstr.Explode(delimiter, str)
+ )
+
fmt.Println(rsStr)
// Output:
@@ -383,9 +518,11 @@ func ExampleExplode() {
}
func ExampleFields() {
- var str string
- str = `goframe is Very Nice to-use`
- rsStr := gstr.Fields(str)
+ var (
+ str = `goframe is Very Nice to-use`
+ rsStr = gstr.Fields(str)
+ )
+
fmt.Println(rsStr)
// Output:
@@ -393,16 +530,24 @@ func ExampleFields() {
}
func ExampleHasPrefix() {
- var s, prefix string
- s = `goframe_is Very Nice.to-use`
+ {
+ var (
+ s = `goframe_is Very Nice.to-use`
+ prefix = "goframe"
+ rsStr = gstr.HasPrefix(s, prefix)
+ )
- prefix = "goframe"
- rsStr := gstr.HasPrefix(s, prefix)
- fmt.Println(rsStr)
+ fmt.Println(rsStr)
+ }
- prefix = "Goframe"
- rsStr = gstr.HasPrefix(s, prefix)
- fmt.Println(rsStr)
+ {
+ var (
+ s = `goframe_is Very Nice.to-use`
+ prefix = "Goframe"
+ rsStr = gstr.HasPrefix(s, prefix)
+ )
+ fmt.Println(rsStr)
+ }
// Output:
// true
@@ -410,16 +555,23 @@ func ExampleHasPrefix() {
}
func ExampleHasSuffix() {
- var s, prefix string
- s = `goframe_is Very Nice.to-use`
+ {
+ var (
+ s = `goframe_is Very Nice.to-use`
+ prefix = "use"
+ rsStr = gstr.HasSuffix(s, prefix)
+ )
+ fmt.Println(rsStr)
+ }
- prefix = "use"
- rsStr := gstr.HasSuffix(s, prefix)
- fmt.Println(rsStr)
-
- prefix = "Use"
- rsStr = gstr.HasSuffix(s, prefix)
- fmt.Println(rsStr)
+ {
+ var (
+ s = `goframe_is Very Nice.to-use`
+ prefix = "Use"
+ rsStr = gstr.HasSuffix(s, prefix)
+ )
+ fmt.Println(rsStr)
+ }
// Output:
// true
@@ -427,21 +579,25 @@ func ExampleHasSuffix() {
}
func ExampleHideStr() {
- var str string
- var percent int
- var hide string
+ {
+ var (
+ str = `13800138000`
+ percent = 40
+ hide = `*`
+ rsStr = gstr.HideStr(str, percent, hide)
+ )
+ fmt.Println(rsStr)
+ }
- str = `13800138000`
- percent = 40
- hide = `*`
- rsStr := gstr.HideStr(str, percent, hide)
- fmt.Println(rsStr)
-
- str = `AAAAAAAAAA`
- percent = 60
- hide = `@`
- rsStr = gstr.HideStr(str, percent, hide)
- fmt.Println(rsStr)
+ {
+ var (
+ str = `AAAAAAAAAA`
+ percent = 60
+ hide = `@`
+ rsStr = gstr.HideStr(str, percent, hide)
+ )
+ fmt.Println(rsStr)
+ }
// Output:
// 138****8000
@@ -449,11 +605,11 @@ func ExampleHideStr() {
}
func ExampleImplode() {
- var glue string
- var pieces []string
- pieces = []string{"goframe", "is", "Very", "Nice", "to", "use"}
- glue = "-"
- rsStr := gstr.Implode(glue, pieces)
+ var (
+ pieces = []string{"goframe", "is", "Very", "Nice", "to", "use"}
+ glue = "-"
+ rsStr = gstr.Implode(glue, pieces)
+ )
fmt.Println(rsStr)
// Output:
@@ -461,16 +617,23 @@ func ExampleImplode() {
}
func ExampleInArray() {
- var a []string
- var s string
- a = []string{"goframe", "is", "Very", "Nice", "to", "use"}
- s = "goframe"
- rsStr := gstr.InArray(a, s)
- fmt.Println(rsStr)
+ {
+ var (
+ a = []string{"goframe", "is", "Very", "Nice", "to", "use"}
+ s = "goframe"
+ rsStr = gstr.InArray(a, s)
+ )
+ fmt.Println(rsStr)
+ }
- s = "golang"
- rsStr = gstr.InArray(a, s)
- fmt.Println(rsStr)
+ {
+ var (
+ a = []string{"goframe", "is", "Very", "Nice", "to", "use"}
+ s = "golang"
+ rsStr = gstr.InArray(a, s)
+ )
+ fmt.Println(rsStr)
+ }
// Output:
// true
@@ -478,14 +641,21 @@ func ExampleInArray() {
}
func ExampleIsLetterLower() {
- var b byte
- b = 65 // In ASCII is "a"
- rsStr := gstr.IsLetterLower(b)
- fmt.Println(rsStr)
+ {
+ var (
+ b byte = 65 // In ASCII is "a"
+ rsStr = gstr.IsLetterLower(b)
+ )
+ fmt.Println(rsStr)
+ }
- b = 97 // In ASCII is "A"
- rsStr = gstr.IsLetterLower(b)
- fmt.Println(rsStr)
+ {
+ var (
+ b byte = 97 // In ASCII is "A"
+ rsStr = gstr.IsLetterLower(b)
+ )
+ fmt.Println(rsStr)
+ }
// Output:
// false
@@ -493,14 +663,21 @@ func ExampleIsLetterLower() {
}
func ExampleIsLetterUpper() {
- var b byte
- b = 65 // In ASCII is "a"
- rsStr := gstr.IsLetterUpper(b)
- fmt.Println(rsStr)
+ {
+ var (
+ b byte = 65 // In ASCII is "a"
+ rsStr = gstr.IsLetterUpper(b)
+ )
+ fmt.Println(rsStr)
+ }
- b = 97 // In ASCII is "A"
- rsStr = gstr.IsLetterUpper(b)
- fmt.Println(rsStr)
+ {
+ var (
+ b byte = 97 // In ASCII is "A"
+ rsStr = gstr.IsLetterUpper(b)
+ )
+ fmt.Println(rsStr)
+ }
// Output:
// true
@@ -508,19 +685,29 @@ func ExampleIsLetterUpper() {
}
func ExampleIsNumeric() {
- var s string
+ {
+ var (
+ s = "88"
+ rsStr = gstr.IsNumeric(s)
+ )
+ fmt.Println(rsStr)
+ }
- s = "88"
- rsStr := gstr.IsNumeric(s)
- fmt.Println(rsStr)
+ {
+ var (
+ s = "aa66bb88"
+ rsStr = gstr.IsNumeric(s)
+ )
+ fmt.Println(rsStr)
+ }
- s = "aa66bb88"
- rsStr = gstr.IsNumeric(s)
- fmt.Println(rsStr)
-
- s = "3.1415926"
- rsStr = gstr.IsNumeric(s)
- fmt.Println(rsStr)
+ {
+ var (
+ s = "3.1415926"
+ rsStr = gstr.IsNumeric(s)
+ )
+ fmt.Println(rsStr)
+ }
// Output:
// true
@@ -529,22 +716,32 @@ func ExampleIsNumeric() {
}
func ExampleIsSubDomain() {
- var subDomain, mainDomain string
+ {
+ var (
+ subDomain = `s.goframe.org`
+ mainDomain = `goframe.org`
+ rsStr = gstr.IsSubDomain(subDomain, mainDomain)
+ )
+ fmt.Println(rsStr)
+ }
- subDomain = `s.goframe.org`
- mainDomain = `goframe.org`
- rsStr := gstr.IsSubDomain(subDomain, mainDomain)
- fmt.Println(rsStr)
+ {
+ var (
+ subDomain = `s.s.goframe.org`
+ mainDomain = `goframe.org`
+ rsStr = gstr.IsSubDomain(subDomain, mainDomain)
+ )
+ fmt.Println(rsStr)
+ }
- subDomain = `s.s.goframe.org`
- mainDomain = `goframe.org`
- rsStr = gstr.IsSubDomain(subDomain, mainDomain)
- fmt.Println(rsStr)
-
- subDomain = `s.s.goframe.org`
- mainDomain = `*goframe.org`
- rsStr = gstr.IsSubDomain(subDomain, mainDomain)
- fmt.Println(rsStr)
+ {
+ var (
+ subDomain = `s.s.goframe.org`
+ mainDomain = `*goframe.org`
+ rsStr = gstr.IsSubDomain(subDomain, mainDomain)
+ )
+ fmt.Println(rsStr)
+ }
// Output:
// true
@@ -553,12 +750,11 @@ func ExampleIsSubDomain() {
}
func ExampleJoin() {
- var array []string
- var sep string
-
- array = []string{"goframe", "is", "Very", "Nice", "to", "use"}
- sep = `,`
- rsStr := gstr.Join(array, sep)
+ var (
+ array = []string{"goframe", "is", "Very", "Nice", "to", "use"}
+ sep = `,`
+ rsStr = gstr.Join(array, sep)
+ )
fmt.Println(rsStr)
// Output:
@@ -566,43 +762,58 @@ func ExampleJoin() {
}
func ExampleJoinAny() {
- var sep string
-
- sep = `@`
- arr1 := []string{"goframe", "is", "Very", "Nice", "to", "use"}
- rsStr := gstr.JoinAny(arr1, sep)
- fmt.Println(rsStr)
-
- sep = `,`
- arr2 := []int{99, 73, 85, 66}
- rsStr2 := gstr.JoinAny(arr2, sep)
- fmt.Println(rsStr2)
-
- sep = `,`
- arr3 := []interface{}{
- "Mary",
- 18,
- 99.5,
- "
",
- "Jack",
- 19,
- 66.5,
+ {
+ var (
+ sep = `@`
+ arr1 = []string{"goframe", "is", "Very", "Nice", "to", "use"}
+ rsStr = gstr.JoinAny(arr1, sep)
+ )
+ fmt.Println(rsStr)
}
- rsStr3 := gstr.JoinAny(arr3, sep)
- fmt.Println(rsStr3)
- sep = `|`
- type StructA struct {
- Name string
- Age int
+ {
+ var (
+ sep = `,`
+ arr2 = []int{99, 73, 85, 66}
+ rsStr2 = gstr.JoinAny(arr2, sep)
+ )
+ fmt.Println(rsStr2)
}
- arr4 := []StructA{
- {"Mary", 18},
- {"Jack", 18},
- {"Lucy", 18},
+
+ {
+ var (
+ sep = `,`
+ arr3 = []interface{}{
+ "Mary",
+ 18,
+ 99.5,
+ "
",
+ "Jack",
+ 19,
+ 66.5,
+ }
+ rsStr3 = gstr.JoinAny(arr3, sep)
+ )
+ fmt.Println(rsStr3)
+ }
+
+ {
+ type StructA struct {
+ Name string
+ Age int
+ }
+ var (
+ sep = `|`
+
+ arr4 = []StructA{
+ {"Mary", 18},
+ {"Jack", 18},
+ {"Lucy", 18},
+ }
+ rsStr = gstr.JoinAny(arr4, sep)
+ )
+ fmt.Println(rsStr)
}
- rsStr = gstr.JoinAny(arr4, sep)
- fmt.Println(rsStr)
// Output:
// goframe@is@Very@Nice@to@use
@@ -612,14 +823,21 @@ func ExampleJoinAny() {
}
func ExampleLcFirst() {
- var str string
- str = `Goframe`
- rsStr := gstr.LcFirst(str)
- fmt.Println(rsStr)
+ {
+ var (
+ str = `Goframe`
+ rsStr = gstr.LcFirst(str)
+ )
+ fmt.Println(rsStr)
+ }
- str = `Goframe is Very Nice to use.`
- rsStr = gstr.LcFirst(str)
- fmt.Println(rsStr)
+ {
+ var (
+ str = `Goframe is Very Nice to use.`
+ rsStr = gstr.LcFirst(str)
+ )
+ fmt.Println(rsStr)
+ }
// Output:
// goframe
@@ -627,18 +845,29 @@ func ExampleLcFirst() {
}
func ExampleLenRune() {
- var str string
- str = `goframe is Very Nice to use`
- rsStr := gstr.LenRune(str)
- fmt.Println(rsStr)
+ {
+ var (
+ str = `goframe is Very Nice to use`
+ rsStr = gstr.LenRune(str)
+ )
+ fmt.Println(rsStr)
+ }
- str = `123 4567 890`
- rsStr = gstr.LenRune(str)
- fmt.Println(rsStr)
+ {
+ var (
+ str = `123 4567 890`
+ rsStr = gstr.LenRune(str)
+ )
+ fmt.Println(rsStr)
+ }
- str = `Goframe是一个非常好用的Go语言框架!`
- rsStr = gstr.LenRune(str)
- fmt.Println(rsStr)
+ {
+ var (
+ str = `Goframe是一个非常好用的Go语言框架!`
+ rsStr = gstr.LenRune(str)
+ )
+ fmt.Println(rsStr)
+ }
// Output:
// 27
@@ -647,24 +876,30 @@ func ExampleLenRune() {
}
func ExampleLevenshtein() {
- var str1, str2 string
- var costIns, costRep, costDel int
- str1 = "Hello World"
- str2 = "ello World"
+ {
+ var (
+ str1 = "Hello World"
+ str2 = "ello World"
+ costIns = 1
+ costRep = 1
+ costDel = 1
+ rsStr = gstr.Levenshtein(str1, str2, costIns, costRep, costDel)
+ )
- costIns = 1
- costRep = 1
- costDel = 1
- rsStr := gstr.Levenshtein(str1, str2, costIns, costRep, costDel)
- fmt.Println(rsStr)
+ fmt.Println(rsStr)
+ }
- str1 = "Hello World"
- str2 = "ello Worles"
- costIns = 10
- costRep = 20
- costDel = 30
- rsStr = gstr.Levenshtein(str1, str2, costIns, costRep, costDel)
- fmt.Println(rsStr)
+ {
+ var (
+ str1 = "Hello World"
+ str2 = "ello Worles"
+ costIns = 10
+ costRep = 20
+ costDel = 30
+ rsStr = gstr.Levenshtein(str1, str2, costIns, costRep, costDel)
+ )
+ fmt.Println(rsStr)
+ }
// Output:
// 1
@@ -672,14 +907,16 @@ func ExampleLevenshtein() {
}
func ExampleNl2Br() {
- var str string
- str = `goframe
+ var (
+ str = `goframe
is
Very
Nice
to
use`
- rsStr := gstr.Nl2Br(str)
+ rsStr = gstr.Nl2Br(str)
+ )
+
fmt.Println(rsStr)
// Output:
@@ -687,31 +924,39 @@ use`
}
func ExampleNumberFormat() {
- var number float64
- var decimals int
- var decPoint string
- var thousandsSep string
- number = 123456
- decimals = 2
- decPoint = "."
- thousandsSep = ","
- rsStr := gstr.NumberFormat(number, decimals, decPoint, thousandsSep)
- fmt.Println(rsStr)
+ {
+ var (
+ number float64 = 123456
+ decimals = 2
+ decPoint = "."
+ thousandsSep = ","
+ rsStr = gstr.NumberFormat(number, decimals, decPoint, thousandsSep)
+ )
+ fmt.Println(rsStr)
+ }
- number = 1234.56
- decimals = 1
- decPoint = ","
- thousandsSep = " "
- rsStr = gstr.NumberFormat(number, decimals, decPoint, thousandsSep)
- fmt.Println(rsStr)
+ {
+ var (
+ number = 1234.56
+ decimals = 1
+ decPoint = ","
+ thousandsSep = " "
+ rsStr = gstr.NumberFormat(number, decimals, decPoint, thousandsSep)
+ )
+ fmt.Println(rsStr)
+ }
- number = 1234.5678
- decimals = 3
- decPoint = "."
- thousandsSep = ","
- rsStr = gstr.NumberFormat(number, decimals, decPoint, thousandsSep)
- fmt.Println(rsStr)
+ {
+ var (
+ number = 1234.5678
+ decimals = 3
+ decPoint = "."
+ thousandsSep = ","
+ rsStr = gstr.NumberFormat(number, decimals, decPoint, thousandsSep)
+ )
+ fmt.Println(rsStr)
+ }
// Output:
// 123,456.00
@@ -720,9 +965,10 @@ func ExampleNumberFormat() {
}
func ExampleOctStr() {
- var str string
- str = `\346\200\241`
- rsStr := gstr.OctStr(str)
+ var (
+ str = `\346\200\241`
+ rsStr = gstr.OctStr(str)
+ )
fmt.Println(rsStr)
// Output:
@@ -730,9 +976,11 @@ func ExampleOctStr() {
}
func ExampleOrd() {
- var str string
- str = `goframe`
- rsStr := gstr.Ord(str)
+ var (
+ str = `goframe`
+ rsStr = gstr.Ord(str)
+ )
+
fmt.Println(rsStr)
// Output:
@@ -740,37 +988,51 @@ func ExampleOrd() {
}
func ExampleParse() {
- var str string
-
- str = `v1=m&v2=n`
- rsStr, _ := gstr.Parse(str)
- fmt.Println(rsStr)
-
- str = `v[a][a]=m&v[a][b]=n`
- rsStr, _ = gstr.Parse(str)
- fmt.Println(rsStr)
-
- // The form of nested Slice is not yet supported.
- str = `v[][]=m&v[][]=n`
- rsStr, err := gstr.Parse(str)
- if err != nil {
- fmt.Println("Error:", err)
+ {
+ var (
+ str = `v1=m&v2=n`
+ rsStr, _ = gstr.Parse(str)
+ )
+ fmt.Println(rsStr)
}
- fmt.Println(rsStr)
- // This will produce an error.
- str = `v=m&v[a]=n`
- rsStr, err = gstr.Parse(str)
- if err != nil {
- fmt.Println("Error:", err)
+ {
+ var (
+ str = `v[a][a]=m&v[a][b]=n`
+ rsStr, _ = gstr.Parse(str)
+ )
+ fmt.Println(rsStr)
}
- fmt.Println(rsStr)
- str = `a .[[b=c`
- rsStr, _ = gstr.Parse(str)
- fmt.Println(rsStr)
+ {
+ // The form of nested Slice is not yet supported.
+ var str = `v[][]=m&v[][]=n`
+ rsStr, err := gstr.Parse(str)
+ if err != nil {
+ panic(err)
+ }
+ fmt.Println(rsStr)
+ }
- // Output:
+ {
+ // This will produce an error.
+ var str = `v=m&v[a]=n`
+ rsStr, err := gstr.Parse(str)
+ if err != nil {
+ println(err)
+ }
+ fmt.Println(rsStr)
+ }
+
+ {
+ var (
+ str = `a .[[b=c`
+ rsStr, _ = gstr.Parse(str)
+ )
+ fmt.Println(rsStr)
+ }
+
+ // May Output:
// map[v1:m v2:n]
// map[v:map[a:map[a:m b:n]]]
// map[v:map[]]
@@ -780,25 +1042,43 @@ func ExampleParse() {
}
func ExamplePos() {
- var haystack, needle string
- var startOffset int
+ {
+ var (
+ haystack = `goframe_is Very Nice.to-use`
+ needle = `Nice`
+ rsStr = gstr.Pos(haystack, needle)
+ )
+ fmt.Println(rsStr)
+ }
- haystack = `goframe_is Very Nice.to-use`
- needle = `Nice`
- rsStr := gstr.Pos(haystack, needle)
- fmt.Println(rsStr)
+ {
+ var (
+ haystack = `goframe_is Very Nice.to-use`
+ needle = `Nice`
+ startOffset = 16
+ rsStr = gstr.Pos(haystack, needle, startOffset)
+ )
+ fmt.Println(rsStr)
+ }
- startOffset = 16
- rsStr = gstr.Pos(haystack, needle, startOffset)
- fmt.Println(rsStr)
+ {
+ var (
+ haystack = `goframe_is Very Nice.to-use`
+ needle = `Nice`
+ startOffset = 17
+ rsStr = gstr.Pos(haystack, needle, startOffset)
+ )
+ fmt.Println(rsStr)
+ }
- startOffset = 17
- rsStr = gstr.Pos(haystack, needle, startOffset)
- fmt.Println(rsStr)
-
- needle = `nice`
- rsStr = gstr.Pos(haystack, needle)
- fmt.Println(rsStr)
+ {
+ var (
+ haystack = `goframe_is Very Nice.to-use`
+ needle = `nice`
+ rsStr = gstr.Pos(haystack, needle)
+ )
+ fmt.Println(rsStr)
+ }
// Output:
// 16
@@ -808,25 +1088,44 @@ func ExamplePos() {
}
func ExamplePosI() {
- var haystack, needle string
- var startOffset int
+ {
+ var (
+ haystack = `goframe_is Very Nice.to-use`
+ needle = `Nice`
+ rsStr = gstr.PosI(haystack, needle)
+ )
- haystack = `goframe_is Very Nice.to-use`
- needle = `Nice`
- rsStr := gstr.PosI(haystack, needle)
- fmt.Println(rsStr)
+ fmt.Println(rsStr)
+ }
- startOffset = 16
- rsStr = gstr.PosI(haystack, needle, startOffset)
- fmt.Println(rsStr)
+ {
+ var (
+ haystack = `goframe_is Very Nice.to-use`
+ needle = `Nice`
+ startOffset = 16
+ rsStr = gstr.PosI(haystack, needle, startOffset)
+ )
+ fmt.Println(rsStr)
+ }
- startOffset = 17
- rsStr = gstr.PosI(haystack, needle, startOffset)
- fmt.Println(rsStr)
+ {
+ var (
+ haystack = `goframe_is Very Nice.to-use`
+ needle = `Nice`
+ startOffset = 17
+ rsStr = gstr.PosI(haystack, needle, startOffset)
+ )
+ fmt.Println(rsStr)
+ }
- needle = `nice`
- rsStr = gstr.PosI(haystack, needle)
- fmt.Println(rsStr)
+ {
+ var (
+ haystack = `goframe_is Very Nice.to-use`
+ needle = `nice`
+ rsStr = gstr.PosI(haystack, needle)
+ )
+ fmt.Println(rsStr)
+ }
// Output:
// 16
@@ -836,26 +1135,44 @@ func ExamplePosI() {
}
func ExamplePosIRune() {
- var haystack, needle string
- var startOffset int
+ {
+ var (
+ haystack = `goframe_is Very Nice.to-use`
+ needle = `Nice`
+ rsStr = gstr.PosIRune(haystack, needle)
+ )
- haystack = `goframe_is Very Nice.to-use`
- needle = `Nice`
- rsStr := gstr.PosIRune(haystack, needle)
- fmt.Println(rsStr)
+ fmt.Println(rsStr)
+ }
- haystack = `Goframe是个非常好用的框架.`
- startOffset = 16
- rsStr = gstr.PosIRune(haystack, needle, startOffset)
- fmt.Println(rsStr)
+ {
+ var (
+ haystack = `Goframe是个非常好用的框架.`
+ needle = `Nice`
+ startOffset = 16
+ rsStr = gstr.PosIRune(haystack, needle, startOffset)
+ )
+ fmt.Println(rsStr)
+ }
- startOffset = 17
- rsStr = gstr.PosIRune(haystack, needle, startOffset)
- fmt.Println(rsStr)
+ {
+ var (
+ haystack = `Goframe是个非常好用的框架.`
+ needle = `Nice`
+ startOffset = 17
+ rsStr = gstr.PosIRune(haystack, needle, startOffset)
+ )
+ fmt.Println(rsStr)
+ }
- needle = `nice`
- rsStr = gstr.PosIRune(haystack, needle)
- fmt.Println(rsStr)
+ {
+ var (
+ haystack = `Goframe是个非常好用的框架.`
+ needle = `nice`
+ rsStr = gstr.PosIRune(haystack, needle)
+ )
+ fmt.Println(rsStr)
+ }
// Output:
// 16
@@ -865,25 +1182,43 @@ func ExamplePosIRune() {
}
func ExamplePosR() {
- var haystack, needle string
- var startOffset int
+ {
+ var (
+ haystack = `goframe_is Very Nice.to-use`
+ needle = `Nice`
+ rsStr = gstr.PosR(haystack, needle)
+ )
+ fmt.Println(rsStr)
+ }
- haystack = `goframe_is Very Nice.to-use`
- needle = `Nice`
- rsStr := gstr.PosR(haystack, needle)
- fmt.Println(rsStr)
+ {
+ var (
+ haystack = `goframe_is Very Nice.to-use`
+ needle = `Nice`
+ startOffset = 16
+ rsStr = gstr.PosR(haystack, needle, startOffset)
+ )
+ fmt.Println(rsStr)
+ }
- startOffset = 16
- rsStr = gstr.PosR(haystack, needle, startOffset)
- fmt.Println(rsStr)
+ {
+ var (
+ haystack = `goframe_is Very Nice.to-use`
+ needle = `Nice`
+ startOffset = 17
+ rsStr = gstr.PosR(haystack, needle, startOffset)
+ )
+ fmt.Println(rsStr)
+ }
- startOffset = 17
- rsStr = gstr.PosR(haystack, needle, startOffset)
- fmt.Println(rsStr)
-
- needle = `nice`
- rsStr = gstr.PosR(haystack, needle)
- fmt.Println(rsStr)
+ {
+ var (
+ haystack = `goframe_is Very Nice.to-use`
+ needle = `nice`
+ rsStr = gstr.PosR(haystack, needle)
+ )
+ fmt.Println(rsStr)
+ }
// Output:
// 16
@@ -893,25 +1228,43 @@ func ExamplePosR() {
}
func ExamplePosRI() {
- var haystack, needle string
- var startOffset int
+ {
+ var (
+ haystack = `goframe_is Very Nice.to-use`
+ needle = `Nice`
+ rsStr = gstr.PosRI(haystack, needle)
+ )
+ fmt.Println(rsStr)
+ }
- haystack = `goframe_is Very Nice.to-use`
- needle = `Nice`
- rsStr := gstr.PosRI(haystack, needle)
- fmt.Println(rsStr)
+ {
+ var (
+ haystack = `goframe_is Very Nice.to-use`
+ needle = `Nice`
+ startOffset = 16
+ rsStr = gstr.PosRI(haystack, needle, startOffset)
+ )
+ fmt.Println(rsStr)
+ }
- startOffset = 16
- rsStr = gstr.PosRI(haystack, needle, startOffset)
- fmt.Println(rsStr)
+ {
+ var (
+ haystack = `goframe_is Very Nice.to-use`
+ needle = `Nice`
+ startOffset = 17
+ rsStr = gstr.PosRI(haystack, needle, startOffset)
+ )
+ fmt.Println(rsStr)
+ }
- startOffset = 17
- rsStr = gstr.PosRI(haystack, needle, startOffset)
- fmt.Println(rsStr)
-
- needle = `nice`
- rsStr = gstr.PosRI(haystack, needle)
- fmt.Println(rsStr)
+ {
+ var (
+ haystack = `goframe_is Very Nice.to-use`
+ needle = `nice`
+ rsStr = gstr.PosRI(haystack, needle)
+ )
+ fmt.Println(rsStr)
+ }
// Output:
// 16
@@ -922,27 +1275,44 @@ func ExamplePosRI() {
}
func ExamplePosRIRune() {
- var haystack, needle string
- var startOffset int
+ {
+ var (
+ haystack = `Goframe是个非常好用的框架`
+ needle = `好用`
+ rsStr = gstr.PosRIRune(haystack, needle)
+ )
- haystack = `Goframe是个非常好用的框架`
- needle = `好用`
- rsStr := gstr.PosRIRune(haystack, needle)
- fmt.Println(rsStr)
+ fmt.Println(rsStr)
+ }
- needle = `框架`
- startOffset = 16
- rsStr = gstr.PosRIRune(haystack, needle, startOffset)
- fmt.Println(rsStr)
+ {
+ var (
+ haystack = `Goframe是个非常好用的框架`
+ needle = `框架`
+ startOffset = 16
+ rsStr = gstr.PosRIRune(haystack, needle, startOffset)
+ )
+ fmt.Println(rsStr)
+ }
- needle = `golang`
- startOffset = 17
- rsStr = gstr.PosRIRune(haystack, needle, startOffset)
- fmt.Println(rsStr)
+ {
+ var (
+ haystack = `Goframe是个非常好用的框架`
+ needle = `golang`
+ startOffset = 17
+ rsStr = gstr.PosRIRune(haystack, needle, startOffset)
+ )
+ fmt.Println(rsStr)
+ }
- needle = `goframe`
- rsStr = gstr.PosRIRune(haystack, needle)
- fmt.Println(rsStr)
+ {
+ var (
+ haystack = `Goframe是个非常好用的框架`
+ needle = `goframe`
+ rsStr = gstr.PosRIRune(haystack, needle)
+ )
+ fmt.Println(rsStr)
+ }
// Output:
// 11
@@ -952,26 +1322,43 @@ func ExamplePosRIRune() {
}
func ExamplePosRRune() {
- var haystack, needle string
- var startOffset int
+ {
+ var (
+ haystack = `goframe_is Very Nice.to-use`
+ needle = `Nice`
+ rsStr = gstr.PosRRune(haystack, needle)
+ )
+ fmt.Println(rsStr)
+ }
- haystack = `goframe_is Very Nice.to-use`
- needle = `Nice`
- rsStr := gstr.PosRRune(haystack, needle)
- fmt.Println(rsStr)
+ {
+ var (
+ haystack = `goframe_is Very Nice.to-use`
+ needle = `Nice`
+ startOffset = 16
+ rsStr = gstr.PosRRune(haystack, needle, startOffset)
+ )
+ fmt.Println(rsStr)
+ }
- startOffset = 16
- rsStr = gstr.PosRRune(haystack, needle, startOffset)
- fmt.Println(rsStr)
+ {
+ var (
+ haystack = `Goframe是中国开发者的福利.`
+ needle = `Nice`
+ startOffset = 17
+ rsStr = gstr.PosRRune(haystack, needle, startOffset)
+ )
+ fmt.Println(rsStr)
+ }
- haystack = `Goframe是中国开发者的福利.`
- startOffset = 17
- rsStr = gstr.PosRRune(haystack, needle, startOffset)
- fmt.Println(rsStr)
-
- needle = `开发者`
- rsStr = gstr.PosRRune(haystack, needle)
- fmt.Println(rsStr)
+ {
+ var (
+ haystack = `Goframe是中国开发者的福利.`
+ needle = `开发者`
+ rsStr = gstr.PosRRune(haystack, needle)
+ )
+ fmt.Println(rsStr)
+ }
// Output:
// 16
@@ -981,27 +1368,43 @@ func ExamplePosRRune() {
}
func ExamplePosRune() {
- var haystack, needle string
- var startOffset int
+ {
+ var (
+ haystack = `goframe_is Very Nice.to-use`
+ needle = `Nice`
+ rsStr = gstr.PosRune(haystack, needle)
+ )
+ fmt.Println(rsStr)
+ }
- haystack = `goframe_is Very Nice.to-use`
- needle = `Nice`
- rsStr := gstr.PosRune(haystack, needle)
- fmt.Println(rsStr)
+ {
+ var (
+ haystack = `我喜欢Goframe框架`
+ needle = `框架`
+ startOffset = 16
+ rsStr = gstr.PosRune(haystack, needle, startOffset)
+ )
+ fmt.Println(rsStr)
+ }
- haystack = `我喜欢Goframe框架`
- needle = `框架`
- startOffset = 16
- rsStr = gstr.PosRune(haystack, needle, startOffset)
- fmt.Println(rsStr)
+ {
+ var (
+ haystack = `我喜欢Goframe框架`
+ needle = `框架`
+ startOffset = 17
+ rsStr = gstr.PosRune(haystack, needle, startOffset)
+ )
+ fmt.Println(rsStr)
+ }
- startOffset = 17
- rsStr = gstr.PosRune(haystack, needle, startOffset)
- fmt.Println(rsStr)
-
- needle = `goframe`
- rsStr = gstr.PosRune(haystack, needle)
- fmt.Println(rsStr)
+ {
+ var (
+ haystack = `我喜欢Goframe框架`
+ needle = `goframe`
+ rsStr = gstr.PosRune(haystack, needle)
+ )
+ fmt.Println(rsStr)
+ }
// Output:
// 16
@@ -1011,14 +1414,21 @@ func ExamplePosRune() {
}
func ExampleQuoteMeta() {
- var str string
- str = `.\+?[^]()`
- rsStr := gstr.QuoteMeta(str)
- fmt.Println(rsStr)
+ {
+ var (
+ str = `.\+?[^]()`
+ rsStr = gstr.QuoteMeta(str)
+ )
+ fmt.Println(rsStr)
+ }
- str = `https://goframe.org/pages/viewpage.action?pageId=1114327`
- rsStr = gstr.QuoteMeta(str)
- fmt.Println(rsStr)
+ {
+ var (
+ str = `https://goframe.org/pages/viewpage.action?pageId=1114327`
+ rsStr = gstr.QuoteMeta(str)
+ )
+ fmt.Println(rsStr)
+ }
// Output:
// \.\\\+\?\[\^\]\(\)
@@ -1027,11 +1437,11 @@ func ExampleQuoteMeta() {
}
func ExampleRepeat() {
- var input string
- var multiplier int
- input = `goframe `
- multiplier = 3
- rsStr := gstr.Repeat(input, multiplier)
+ var (
+ input = `goframe `
+ multiplier = 3
+ rsStr = gstr.Repeat(input, multiplier)
+ )
fmt.Println(rsStr)
// Output:
@@ -1039,18 +1449,26 @@ func ExampleRepeat() {
}
func ExampleReplace() {
- var origin, search, replace string
- var count int
+ {
+ var (
+ origin = `goframe_is_Very_Nice_to_use!`
+ search = `_`
+ replace = `+`
+ rsStr = gstr.Replace(origin, search, replace)
+ )
+ fmt.Println(rsStr)
+ }
- origin = `goframe_is_Very_Nice_to_use!`
- search = `_`
- replace = `+`
- rsStr := gstr.Replace(origin, search, replace)
- fmt.Println(rsStr)
-
- count = 2
- rsStr = gstr.Replace(origin, search, replace, count)
- fmt.Println(rsStr)
+ {
+ var (
+ origin = `goframe_is_Very_Nice_to_use!`
+ search = `_`
+ replace = `+`
+ count = 2
+ rsStr = gstr.Replace(origin, search, replace, count)
+ )
+ fmt.Println(rsStr)
+ }
// Output:
// goframe+is+Very+Nice+to+use!
@@ -1058,18 +1476,23 @@ func ExampleReplace() {
}
func ExampleReplaceByArray() {
- var origin string
- var array []string
+ {
+ var (
+ origin = `Golang is Very Good`
+ array = []string{"o", "O"}
+ rsStr = gstr.ReplaceByArray(origin, array)
+ )
+ fmt.Println(rsStr)
+ }
- origin = `Golang is Very Good`
-
- array = []string{"o", "O"}
- rsStr := gstr.ReplaceByArray(origin, array)
- fmt.Println(rsStr)
-
- array = []string{"Golang", "Goframe", "Good", "Nice"}
- rsStr = gstr.ReplaceByArray(origin, array)
- fmt.Println(rsStr)
+ {
+ var (
+ origin = `Golang is Very Good`
+ array = []string{"Golang", "Goframe", "Good", "Nice"}
+ rsStr = gstr.ReplaceByArray(origin, array)
+ )
+ fmt.Println(rsStr)
+ }
// Output:
// GOlang is Very GOOd
@@ -1077,24 +1500,29 @@ func ExampleReplaceByArray() {
}
func ExampleReplaceByMap() {
- var origin string
- var replaces map[string]string
-
- origin = `Golang is Very Good`
-
- replaces = map[string]string{
- "Golang": "Goframe",
- "Good": "Nice",
+ {
+ var (
+ origin = `Golang is Very Good`
+ replaces = map[string]string{
+ "Golang": "Goframe",
+ "Good": "Nice",
+ }
+ rsStr = gstr.ReplaceByMap(origin, replaces)
+ )
+ fmt.Println(rsStr)
}
- rsStr := gstr.ReplaceByMap(origin, replaces)
- fmt.Println(rsStr)
- replaces = map[string]string{
- "golang": "Goframe",
- "good": "Nice",
+ {
+ var (
+ origin = `Golang is Very Good`
+ replaces = map[string]string{
+ "golang": "Goframe",
+ "good": "Nice",
+ }
+ rsStr = gstr.ReplaceByMap(origin, replaces)
+ )
+ fmt.Println(rsStr)
}
- rsStr = gstr.ReplaceByMap(origin, replaces)
- fmt.Println(rsStr)
// Output:
// Goframe is Very Nice
@@ -1102,14 +1530,13 @@ func ExampleReplaceByMap() {
}
func ExampleReplaceI() {
- var origin, search, replace string
- var count int
-
- origin = `goframe is Very Nice to use`
- search = `Goframe`
- replace = `golang`
- count = 3
- rsStr := gstr.ReplaceI(origin, search, replace, count)
+ var (
+ origin = `goframe is Very Nice to use`
+ search = `Goframe`
+ replace = `golang`
+ count = 3
+ rsStr = gstr.ReplaceI(origin, search, replace, count)
+ )
fmt.Println(rsStr)
// Output:
@@ -1117,39 +1544,42 @@ func ExampleReplaceI() {
}
func ExampleReplaceIByArray() {
- fmt.Println(gstr.ReplaceIByArray(
- `golang is very nice`,
- []string{
- "Golang",
- "GoFrame",
- "Nice",
- "GOOD",
- },
- ))
+ var (
+ origin = `golang is very nice`
+ array = []string{"Golang", "GoFrame", "Nice", "GOOD"}
+ rsStr = gstr.ReplaceIByArray(origin, array)
+ )
+
+ fmt.Println(rsStr)
// Output:
// GoFrame is very GOOD
}
func ExampleReplaceIByMap() {
- var origin string
- var replaces map[string]string
-
- origin = `Golang is Very Good`
-
- replaces = map[string]string{
- "Golang": "Goframe",
- "Good": "Nice",
+ {
+ var (
+ origin = `Golang is Very Good`
+ replaces = map[string]string{
+ "Golang": "Goframe",
+ "Good": "Nice",
+ }
+ rsStr = gstr.ReplaceIByMap(origin, replaces)
+ )
+ fmt.Println(rsStr)
}
- rsStr := gstr.ReplaceIByMap(origin, replaces)
- fmt.Println(rsStr)
- replaces = map[string]string{
- "golang": "Goframe",
- "good": "Nice",
+ {
+ var (
+ origin = `Golang is Very Good`
+ replaces = map[string]string{
+ "golang": "Goframe",
+ "good": "Nice",
+ }
+ rsStr = gstr.ReplaceIByMap(origin, replaces)
+ )
+ fmt.Println(rsStr)
}
- rsStr = gstr.ReplaceIByMap(origin, replaces)
- fmt.Println(rsStr)
// Output:
// Goframe is Very Nice
@@ -1157,9 +1587,10 @@ func ExampleReplaceIByMap() {
}
func ExampleReverse() {
- var str string
- str = `123456`
- rsStr := gstr.Reverse(str)
+ var (
+ str = `123456`
+ rsStr = gstr.Reverse(str)
+ )
fmt.Println(rsStr)
// Output:
@@ -1167,25 +1598,32 @@ func ExampleReverse() {
}
func ExampleSearchArray() {
- var a []string
- var s string
- a = []string{
- "goframe",
- "is",
- "Very",
- "Nice",
+ {
+ var (
+ a = []string{"goframe", "is", "Very", "Nice"}
+ s = `goframe`
+ rsStr = gstr.SearchArray(a, s)
+ )
+ fmt.Println(rsStr)
}
- s = `goframe`
- rsStr := gstr.SearchArray(a, s)
- fmt.Println(rsStr)
- s = `Very`
- rsStr = gstr.SearchArray(a, s)
- fmt.Println(rsStr)
+ {
+ var (
+ a = []string{"goframe", "is", "Very", "Nice"}
+ s = `Very`
+ rsStr = gstr.SearchArray(a, s)
+ )
+ fmt.Println(rsStr)
+ }
- s = `use`
- rsStr = gstr.SearchArray(a, s)
- fmt.Println(rsStr)
+ {
+ var (
+ a = []string{"goframe", "is", "Very", "Nice"}
+ s = `use`
+ rsStr = gstr.SearchArray(a, s)
+ )
+ fmt.Println(rsStr)
+ }
// Output:
// 0
@@ -1194,9 +1632,10 @@ func ExampleSearchArray() {
}
func ExampleShuffle() {
- var str string
- str = `goframe_is Nice.`
- rsStr := gstr.Shuffle(str)
+ var (
+ str = `goframe_is Nice.`
+ rsStr = gstr.Shuffle(str)
+ )
fmt.Println(rsStr)
// May Output:
@@ -1204,37 +1643,61 @@ func ExampleShuffle() {
}
func ExampleSimilarText() {
- var first, second string
- var percent *float64
- first = `goframe_is`
- second = `go-nice`
- rsStr := gstr.SimilarText(first, second, percent)
- fmt.Println(rsStr)
+ {
+ var (
+ percent *float64
+ first = `goframe_is`
+ second = `go-nice`
+ rsStr = gstr.SimilarText(first, second, percent)
+ )
+ fmt.Println(rsStr)
+ }
+
+ {
+ var (
+ first = `AaBbCcDd`
+ second = `ad`
+ )
+ p := 0.80
+ rsStr := gstr.SimilarText(first, second, &p)
+ fmt.Println(rsStr)
+ }
// Output:
// 3
+ // 2
}
func ExampleSoundex() {
- var str string
- var str2 string
- str = `Euler`
- str2 = `Ellery`
- rsStr := gstr.Soundex(str)
- rsStr2 := gstr.Soundex(str2)
- fmt.Println(rsStr, rsStr2)
+ {
+ var (
+ str = `Euler`
+ str2 = `Ellery`
+ rsStr = gstr.Soundex(str)
+ rsStr2 = gstr.Soundex(str2)
+ )
+ fmt.Println(rsStr, rsStr2)
+ }
- str = `Gauss`
- str2 = `Ghosh`
- rsStr = gstr.Soundex(str)
- rsStr2 = gstr.Soundex(str2)
- fmt.Println(rsStr, rsStr2)
+ {
+ var (
+ str = `Gauss`
+ str2 = `Ghosh`
+ rsStr = gstr.Soundex(str)
+ rsStr2 = gstr.Soundex(str2)
+ )
+ fmt.Println(rsStr, rsStr2)
+ }
- str = `Lloyd`
- str2 = `Ladd`
- rsStr = gstr.Soundex(str)
- rsStr2 = gstr.Soundex(str2)
- fmt.Println(rsStr, rsStr2)
+ {
+ var (
+ str = `Lloyd`
+ str2 = `Ladd`
+ rsStr = gstr.Soundex(str)
+ rsStr2 = gstr.Soundex(str2)
+ )
+ fmt.Println(rsStr, rsStr2)
+ }
// Output:
// E406 E406
@@ -1243,10 +1706,11 @@ func ExampleSoundex() {
}
func ExampleSplit() {
- var str, delimiter string
- str = `GoFrame_Nice`
- delimiter = `_`
- rsStr := gstr.Split(str, delimiter)
+ var (
+ str = `GoFrame_Nice`
+ delimiter = `_`
+ rsStr = gstr.Split(str, delimiter)
+ )
fmt.Println(rsStr)
// Output:
@@ -1254,11 +1718,12 @@ func ExampleSplit() {
}
func ExampleSplitAndTrim() {
- var str, delimiter, characterMask string
- str = ` goframe, is, Very ,Nice ,to, use`
- delimiter = `,`
- characterMask = ` `
- rsStr := gstr.SplitAndTrim(str, delimiter, characterMask)
+ var (
+ str = ` goframe, is, Very ,Nice ,to, use`
+ delimiter = `,`
+ characterMask = ` `
+ rsStr = gstr.SplitAndTrim(str, delimiter, characterMask)
+ )
fmt.Println(rsStr)
// Output:
@@ -1266,45 +1731,36 @@ func ExampleSplitAndTrim() {
}
func ExampleStr() {
- var haystack, needle string
- haystack = `goframe nice`
- needle = `fram`
- rsStr := gstr.Str(haystack, needle)
- fmt.Println(rsStr)
-
- needle = `ame n`
- rsStr = gstr.Str(haystack, needle)
+ var (
+ haystack = `xxx.jpg`
+ needle = `.`
+ rsStr = gstr.Str(haystack, needle)
+ )
fmt.Println(rsStr)
// Output:
- // me nice
- // nice
+ // .jpg
}
func ExampleStrEx() {
- var haystack, needle string
- haystack = `ABCDEFG`
- needle = `B`
- rsStr := gstr.StrEx(haystack, needle)
- fmt.Println(rsStr)
-
- haystack = `ABCDEFG`
- needle = `E`
- rsStr = gstr.StrEx(haystack, needle)
+ var (
+ haystack = `https://goframe.org/index.html?a=1&b=2`
+ needle = `?`
+ rsStr = gstr.StrEx(haystack, needle)
+ )
fmt.Println(rsStr)
// Output:
- // CDEFG
- // FG
+ // a=1&b=2
}
func ExampleStrLimit() {
- var str, suffix string
- var length int
- str = `1234567890.png`
- length = 8
- suffix = `.jpg`
- rsStr := gstr.StrLimit(str, length, suffix)
+ var (
+ str = `1234567890.png`
+ length = 8
+ suffix = `.jpg`
+ rsStr = gstr.StrLimit(str, length, suffix)
+ )
fmt.Println(rsStr)
// Output:
@@ -1312,51 +1768,60 @@ func ExampleStrLimit() {
}
func ExampleStrLimitRune() {
- var str, suffix string
- var length int
- str = `Goframe是一个非常好用的Go语言框架.`
- length = 7
- suffix = "好用"
- rsStr := gstr.StrLimitRune(str, length, suffix)
+ var (
+ str = `123456789`
+ length = 5
+ suffix = "ABCD"
+ rsStr = gstr.StrLimitRune(str, length, suffix)
+ )
fmt.Println(rsStr)
// Output:
- // Goframe好用
+ // 12345ABCD
}
func ExampleStrTill() {
- var haystack, needle string
+ {
+ var (
+ haystack = `goframe是一个好用的框架,她提供了非常丰富的工具给使用者.`
+ needle = `,`
+ rsStr = gstr.StrTill(haystack, needle)
+ )
+ fmt.Println(rsStr)
+ }
- haystack = `ABCDEFGHIJKLMN`
- needle = `C`
- rsStr := gstr.StrTill(haystack, needle)
- fmt.Println(rsStr)
-
- needle = `E`
- rsStr = gstr.StrTill(haystack, needle)
- fmt.Println(rsStr)
-
- needle = `G`
- rsStr = gstr.StrTill(haystack, needle)
- fmt.Println(rsStr)
+ {
+ var (
+ haystack = `ABCDEFGHIJKLMN`
+ needle = `EF`
+ rsStr = gstr.StrTill(haystack, needle)
+ )
+ fmt.Println(rsStr)
+ }
// Output:
- // ABC
+ // goframe是一个好用的框架,
// ABCDE
- // ABCDEFG
}
func ExampleStrTillEx() {
- var haystack, needle string
- haystack = `abcdefg`
- needle = `e`
- rsStr := gstr.StrTillEx(haystack, needle)
- fmt.Println(rsStr)
+ {
+ var (
+ haystack = `abcdefg`
+ needle = `e`
+ rsStr = gstr.StrTillEx(haystack, needle)
+ )
+ fmt.Println(rsStr)
+ }
- haystack = `abcdefg`
- needle = `de`
- rsStr = gstr.StrTillEx(haystack, needle)
- fmt.Println(rsStr)
+ {
+ var (
+ haystack = `abcdefg`
+ needle = `de`
+ rsStr = gstr.StrTillEx(haystack, needle)
+ )
+ fmt.Println(rsStr)
+ }
// Output:
// abcd
@@ -1364,9 +1829,10 @@ func ExampleStrTillEx() {
}
func ExampleStripSlashes() {
- var str string
- str = `C:\\windows\\GoFrame\\test`
- rsStr := gstr.StripSlashes(str)
+ var (
+ str = `C:\\windows\\GoFrame\\test`
+ rsStr = gstr.StripSlashes(str)
+ )
fmt.Println(rsStr)
// Output:
@@ -1374,33 +1840,38 @@ func ExampleStripSlashes() {
}
func ExampleSubStr() {
- var str string
- var start, length int
+ {
+ var (
+ str = `123456789`
+ start = 0
+ length = 2
+ subStr = gstr.SubStr(str, start, length)
+ )
+ fmt.Println(subStr)
+ }
- str = `ABCDEFGHIJK`
-
- start = 0
- length = 2
- subStr := gstr.SubStr(str, start, length)
- fmt.Println(subStr)
-
- start = 5
- length = 6
- subStr = gstr.SubStr(str, start, length)
- fmt.Println(subStr)
+ {
+ var (
+ str = `123456789`
+ start = 5
+ length = 3
+ subStr = gstr.SubStr(str, start, length)
+ )
+ fmt.Println(subStr)
+ }
// Output:
- // AB
- // FGHIJK
+ // 12
+ // 678
}
func ExampleSubStrRune() {
- var str string
- var start, length int
- str = `123456789`
- start = 5
- length = 4
- subStr := gstr.SubStrRune(str, start, length)
+ var (
+ str = `123456789`
+ start = 5
+ length = 4
+ subStr = gstr.SubStrRune(str, start, length)
+ )
fmt.Println(subStr)
// Output:
@@ -1408,9 +1879,10 @@ func ExampleSubStrRune() {
}
func ExampleToLower() {
- var s string
- s = `GOFRAME IS VERY NICE TO USE`
- rsStr := gstr.ToLower(s)
+ var (
+ s = `GOFRAME IS VERY NICE TO USE`
+ rsStr = gstr.ToLower(s)
+ )
fmt.Println(rsStr)
// Output:
@@ -1418,9 +1890,10 @@ func ExampleToLower() {
}
func ExampleToUpper() {
- var s string
- s = `goframe is very nice to use`
- rsStr := gstr.ToUpper(s)
+ var (
+ s = `goframe is very nice to use`
+ rsStr = gstr.ToUpper(s)
+ )
fmt.Println(rsStr)
// Output:
@@ -1428,10 +1901,11 @@ func ExampleToUpper() {
}
func ExampleTrim() {
- var str, characterMask string
- str = `.abc.def..`
- characterMask = "."
- rsStr := gstr.Trim(str, characterMask)
+ var (
+ str = `.abc.def..`
+ characterMask = "."
+ rsStr = gstr.Trim(str, characterMask)
+ )
fmt.Println(rsStr)
// Output:
@@ -1439,10 +1913,11 @@ func ExampleTrim() {
}
func ExampleTrimAll() {
- var str, characterMask string
- str = `.abc.def...`
- characterMask = "."
- rsStr := gstr.TrimAll(str, characterMask)
+ var (
+ str = `.abc.def...`
+ characterMask = "."
+ rsStr = gstr.TrimAll(str, characterMask)
+ )
fmt.Println(rsStr)
// Output:
@@ -1450,10 +1925,11 @@ func ExampleTrimAll() {
}
func ExampleTrimLeft() {
- var str, characterMask string
- str = `..abc.def.. `
- characterMask = "."
- rsStr := gstr.TrimLeft(str, characterMask)
+ var (
+ str = `..abc.def.. `
+ characterMask = "."
+ rsStr = gstr.TrimLeft(str, characterMask)
+ )
fmt.Println(rsStr)
// Output:
@@ -1461,12 +1937,12 @@ func ExampleTrimLeft() {
}
func ExampleTrimLeftStr() {
- var str, cut string
- var count int
- str = `...abcd..efg...`
- cut = "."
- count = 2
- rsStr := gstr.TrimLeftStr(str, cut, count)
+ var (
+ str = `...abcd..efg...`
+ cut = "."
+ count = 2
+ rsStr = gstr.TrimLeftStr(str, cut, count)
+ )
fmt.Println(rsStr)
// Output:
@@ -1474,10 +1950,11 @@ func ExampleTrimLeftStr() {
}
func ExampleTrimRight() {
- var str, characterMask string
- str = `abcdef `
- characterMask = "def" // []byte{"d", "e", "f"}
- rsStr := gstr.TrimRight(str, characterMask)
+ var (
+ str = `abcdef `
+ characterMask = "def" // []byte{"d", "e", "f"}
+ rsStr = gstr.TrimRight(str, characterMask)
+ )
fmt.Println(rsStr)
// Output:
@@ -1485,25 +1962,35 @@ func ExampleTrimRight() {
}
func ExampleTrimRightStr() {
- var str, cut string
- var count int
- str = `aaa,bbb,ccc,ddd,eee,`
- cut = ","
- count = 1
- rsStr := gstr.TrimRightStr(str, cut, count)
- fmt.Println(rsStr)
+ {
+ var (
+ str = `aaa,bbb,ccc,ddd,eee,`
+ cut = ","
+ count = 1
+ rsStr = gstr.TrimRightStr(str, cut, count)
+ )
+ fmt.Println(rsStr)
+ }
- str = `aaa,bbb,ccc,ddd,eee,,,,,`
- cut = ","
- count = -1
- rsStr = gstr.TrimRightStr(str, cut, count)
- fmt.Println(rsStr)
+ {
+ var (
+ str = `aaa,bbb,ccc,ddd,eee,,,,,`
+ cut = ","
+ count = -1
+ rsStr = gstr.TrimRightStr(str, cut, count)
+ )
+ fmt.Println(rsStr)
+ }
- str = `aaa,bbb,ccc,ddd,eee,,,,, `
- cut = ","
- count = -1
- rsStr = gstr.TrimRightStr(str, cut, count)
- fmt.Println(rsStr)
+ {
+ var (
+ str = `aaa,bbb,ccc,ddd,eee,,,,, `
+ cut = ","
+ count = -1
+ rsStr = gstr.TrimRightStr(str, cut, count)
+ )
+ fmt.Println(rsStr)
+ }
// Output:
// aaa,bbb,ccc,ddd,eee
@@ -1512,16 +1999,23 @@ func ExampleTrimRightStr() {
}
func ExampleTrimStr() {
- var str, cut string
- var count int
- str = `goframe is Very Nice to-use`
- cut = "goframe"
- rsStr := gstr.TrimStr(str, cut, count)
- fmt.Println(rsStr)
-
- cut = "use"
- rsStr = gstr.TrimStr(str, cut, count)
- fmt.Println(rsStr)
+ {
+ var (
+ str = `goframe is Very Nice to-use`
+ cut = "goframe"
+ rsStr = gstr.TrimStr(str, cut)
+ )
+ fmt.Println(rsStr)
+ }
+ {
+ var (
+ str = `goframe is Very Nice to-use`
+ cut = "use"
+ count = -1
+ rsStr = gstr.TrimStr(str, cut, count)
+ )
+ fmt.Println(rsStr)
+ }
// Output:
// is Very Nice to-use
@@ -1529,9 +2023,10 @@ func ExampleTrimStr() {
}
func ExampleUcFirst() {
- var s string
- s = `goframe is very nice to use.`
- rsStr := gstr.UcFirst(s)
+ var (
+ s = `goframe is very nice to use.`
+ rsStr = gstr.UcFirst(s)
+ )
fmt.Println(rsStr)
// Output:
@@ -1539,9 +2034,10 @@ func ExampleUcFirst() {
}
func ExampleUcWords() {
- var str string
- str = `goframe is very nice to use.`
- rsStr := gstr.UcWords(str)
+ var (
+ str = `goframe is very nice to use.`
+ rsStr = gstr.UcWords(str)
+ )
fmt.Println(rsStr)
// Output:
@@ -1549,19 +2045,25 @@ func ExampleUcWords() {
}
func ExampleWordWrap() {
- var str, br string
- var width int
- str = `A very long woooooooooooooooooord. and something`
- width = 8
- br = "\n"
- rsStr := gstr.WordWrap(str, width, br)
- fmt.Println(rsStr)
+ {
+ var (
+ str = `A very long woooooooooooooooooord. and something`
+ width = 8
+ br = "\n"
+ rsStr = gstr.WordWrap(str, width, br)
+ )
+ fmt.Println(rsStr)
+ }
- str = `The quick brown fox jumped over the lazy dog.`
- width = 20
- br = "
\n"
- rsStr = gstr.WordWrap(str, width, br)
- fmt.Printf("%v", rsStr)
+ {
+ var (
+ str = `The quick brown fox jumped over the lazy dog.`
+ width = 20
+ br = "
\n"
+ rsStr = gstr.WordWrap(str, width, br)
+ )
+ fmt.Printf("%v", rsStr)
+ }
// Output:
// A very
From 290200a4903ede04b3320a104faa44d775229ea6 Mon Sep 17 00:00:00 2001
From: iamyl <57165465@qq.com>
Date: Thu, 18 Nov 2021 06:26:27 +0800
Subject: [PATCH 13/17] =?UTF-8?q?=E4=BF=AE=E6=94=B9=E7=A4=BA=E4=BE=8B?=
=?UTF-8?q?=E8=A1=A8=E7=8E=B0=E5=BD=A2=E5=BC=8F?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
text/gstr/gstr_z_all_example_test.go | 134 ++++++++++++++++++---------
1 file changed, 92 insertions(+), 42 deletions(-)
diff --git a/text/gstr/gstr_z_all_example_test.go b/text/gstr/gstr_z_all_example_test.go
index cfb05c8d9..79fe3023d 100644
--- a/text/gstr/gstr_z_all_example_test.go
+++ b/text/gstr/gstr_z_all_example_test.go
@@ -446,6 +446,16 @@ func ExampleCountI() {
{
var (
s = `goframe_is Very Nice.to-use`
+ substr = "Goframe"
+ rsStr = gstr.CountI(s, substr)
+ )
+
+ fmt.Println(rsStr)
+ }
+
+ {
+ var (
+ s = `Goframe_is Very Nice.to-use`
substr = "golang"
rsStr = gstr.CountI(s, substr)
)
@@ -454,6 +464,7 @@ func ExampleCountI() {
// Output:
// 1
+ // 1
// 0
}
@@ -511,10 +522,10 @@ func ExampleExplode() {
rsStr = gstr.Explode(delimiter, str)
)
- fmt.Println(rsStr)
+ fmt.Printf(`%#v`, rsStr)
// Output:
- // [goframe is Very Nice to use]
+ // []string{"goframe", "is", "Very", "Nice", "to", "use"}
}
func ExampleFields() {
@@ -523,10 +534,10 @@ func ExampleFields() {
rsStr = gstr.Fields(str)
)
- fmt.Println(rsStr)
+ fmt.Printf(`%#v`, rsStr)
// Output:
- // [goframe is Very Nice to-use]
+ // []string{"goframe", "is", "Very", "Nice", "to-use"}
}
func ExampleHasPrefix() {
@@ -975,6 +986,7 @@ func ExampleOctStr() {
// 怡
}
+// '103' is the 'g' in ASCII
func ExampleOrd() {
var (
str = `goframe`
@@ -985,6 +997,7 @@ func ExampleOrd() {
// Output:
// 103
+
}
func ExampleParse() {
@@ -1633,13 +1646,13 @@ func ExampleSearchArray() {
func ExampleShuffle() {
var (
- str = `goframe_is Nice.`
+ str = `abcdefg`
rsStr = gstr.Shuffle(str)
)
fmt.Println(rsStr)
// May Output:
- // e giNomescraf._i
+ // efcgbda
}
func ExampleSimilarText() {
@@ -1711,10 +1724,10 @@ func ExampleSplit() {
delimiter = `_`
rsStr = gstr.Split(str, delimiter)
)
- fmt.Println(rsStr)
+ fmt.Printf(`%#v`, rsStr)
// Output:
- // [GoFrame Nice]
+ // []string{"GoFrame", "Nice"}
}
func ExampleSplitAndTrim() {
@@ -1724,10 +1737,10 @@ func ExampleSplitAndTrim() {
characterMask = ` `
rsStr = gstr.SplitAndTrim(str, delimiter, characterMask)
)
- fmt.Println(rsStr)
+ fmt.Printf("%#v", rsStr)
// Output:
- // [goframe is Very Nice to use]
+ // []string{"goframe", "is", "Very", "Nice", "to", "use"}
}
func ExampleStr() {
@@ -1755,29 +1768,55 @@ func ExampleStrEx() {
}
func ExampleStrLimit() {
- var (
- str = `1234567890.png`
- length = 8
- suffix = `.jpg`
- rsStr = gstr.StrLimit(str, length, suffix)
- )
- fmt.Println(rsStr)
+ {
+ var (
+ str = `1234567890.png`
+ length = 4
+ suffix = `.jpg`
+ rsStr = gstr.StrLimit(str, length, suffix)
+ )
+ fmt.Println(rsStr)
+ }
+
+ {
+ var (
+ str = `123456789`
+ length = 3
+ suffix = `...`
+ rsStr = gstr.StrLimit(str, length, suffix)
+ )
+ fmt.Println(rsStr)
+ }
// Output:
- // 12345678.jpg
+ // 1234.jpg
+ // 123...
}
func ExampleStrLimitRune() {
- var (
- str = `123456789`
- length = 5
- suffix = "ABCD"
- rsStr = gstr.StrLimitRune(str, length, suffix)
- )
- fmt.Println(rsStr)
+ {
+ var (
+ str = `123456789`
+ length = 5
+ suffix = "ABCD"
+ rsStr = gstr.StrLimitRune(str, length, suffix)
+ )
+ fmt.Println(rsStr)
+ }
+
+ {
+ var (
+ str = `goframe是一个好用的框架她提供了非常丰富的工具给使用者.`
+ length = 15
+ suffix = "!"
+ rsStr = gstr.StrLimitRune(str, length, suffix)
+ )
+ fmt.Println(rsStr)
+ }
// Output:
// 12345ABCD
+ // goframe是一个好用的框架!
}
func ExampleStrTill() {
@@ -1792,8 +1831,8 @@ func ExampleStrTill() {
{
var (
- haystack = `ABCDEFGHIJKLMN`
- needle = `EF`
+ haystack = `https://goframe.org/index.html?test=123456`
+ needle = `?`
rsStr = gstr.StrTill(haystack, needle)
)
fmt.Println(rsStr)
@@ -1801,14 +1840,14 @@ func ExampleStrTill() {
// Output:
// goframe是一个好用的框架,
- // ABCDE
+ // https://goframe.org/index.html?
}
func ExampleStrTillEx() {
{
var (
- haystack = `abcdefg`
- needle = `e`
+ haystack = `xxxx.txt`
+ needle = `.txt`
rsStr = gstr.StrTillEx(haystack, needle)
)
fmt.Println(rsStr)
@@ -1816,16 +1855,16 @@ func ExampleStrTillEx() {
{
var (
- haystack = `abcdefg`
- needle = `de`
+ haystack = `文件名.zip`
+ needle = `.zip`
rsStr = gstr.StrTillEx(haystack, needle)
)
fmt.Println(rsStr)
}
// Output:
- // abcd
- // abc
+ // xxxx
+ // 文件名
}
func ExampleStripSlashes() {
@@ -1866,16 +1905,27 @@ func ExampleSubStr() {
}
func ExampleSubStrRune() {
- var (
- str = `123456789`
- start = 5
- length = 4
- subStr = gstr.SubStrRune(str, start, length)
- )
- fmt.Println(subStr)
-
+ {
+ var (
+ str = `123456789`
+ start = 5
+ length = 4
+ subStr = gstr.SubStrRune(str, start, length)
+ )
+ fmt.Println(subStr)
+ }
+ {
+ var (
+ str = `一二三四五六七八九零`
+ start = 5
+ length = 4
+ subStr = gstr.SubStrRune(str, start, length)
+ )
+ fmt.Println(subStr)
+ }
// Output:
// 6789
+ // 六七八九
}
func ExampleToLower() {
From f6facc75070ac2b89999dbb01356d4299815712a Mon Sep 17 00:00:00 2001
From: iamyl <57165465@qq.com>
Date: Thu, 18 Nov 2021 08:54:44 +0800
Subject: [PATCH 14/17] =?UTF-8?q?=E4=BF=AE=E6=94=B9=E7=A4=BA=E4=BE=8B?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
gstr_z_all_example_test.go | 2127 ++++++++++++++++++++++++++++++++++++
1 file changed, 2127 insertions(+)
create mode 100644 gstr_z_all_example_test.go
diff --git a/gstr_z_all_example_test.go b/gstr_z_all_example_test.go
new file mode 100644
index 000000000..79fe3023d
--- /dev/null
+++ b/gstr_z_all_example_test.go
@@ -0,0 +1,2127 @@
+package gstr_test
+
+import (
+ "fmt"
+
+ "github.com/gogf/gf/v2/text/gstr"
+)
+
+func ExampleAddSlashes() {
+ var (
+ str = `'aa'"bb"cc\r\n\d\t`
+ rsStr = gstr.AddSlashes(str)
+ )
+
+ fmt.Println(rsStr)
+
+ // Output:
+ // \'aa\'\"bb\"cc\\r\\n\\d\\t
+}
+
+func ExampleCaseCamel() {
+ var (
+ str = `goframe_is very nice.to-use`
+ rsStr = gstr.CaseCamel(str)
+ )
+ fmt.Println(rsStr)
+
+ // Output:
+ // GoframeIsVeryNiceToUse
+}
+
+func ExampleCaseCamelLower() {
+ var (
+ str = `goframe_is very nice.to-use`
+ rsStr = gstr.CaseCamelLower(str)
+ )
+
+ fmt.Println(rsStr)
+
+ // Output:
+ // goframeIsVeryNiceToUse
+}
+
+func ExampleCaseDelimited() {
+ var (
+ str = `goframe_is_very-nice.to-use`
+ del = uint8(35)
+ rsStr = gstr.CaseDelimited(str, del)
+ )
+ fmt.Println(rsStr)
+
+ // Output:
+ // goframe#is#very#nice#to#use
+}
+
+func ExampleCaseDelimitedScreaming() {
+ {
+ var (
+ str = `goframe_is Very Nice.to-use`
+ del = uint8(35)
+ rsStr = gstr.CaseDelimitedScreaming(str, del, true)
+ )
+ fmt.Println(rsStr)
+ }
+
+ {
+ var (
+ str = `GOFRAME_IS VERY NICE.TO-USE`
+ del = uint8(35)
+ rsStr = gstr.CaseDelimitedScreaming(str, del, false)
+ )
+ fmt.Println(rsStr)
+ }
+
+ // Output:
+ // GOFRAME#IS#VERY#NICE#TO#USE
+ // goframe#is#very#nice#to#use
+}
+
+func ExampleCaseKebab() {
+ var (
+ str = `goframe_is Very Nice.to-use`
+ rsStr = gstr.CaseKebab(str)
+ )
+ fmt.Println(rsStr)
+
+ // Output:
+ // goframe-is-very-nice-to-use
+}
+
+func ExampleCaseKebabScreaming() {
+ var (
+ str = `goframe_is Very Nice.to-use`
+ rsStr = gstr.CaseKebabScreaming(str)
+ )
+ fmt.Println(rsStr)
+
+ // Output:
+ // GOFRAME-IS-VERY-NICE-TO-USE
+}
+
+func ExampleCaseSnake() {
+ var (
+ str = `goframe_is Very Nice.to-use`
+ rsStr = gstr.CaseSnake(str)
+ )
+
+ fmt.Println(rsStr)
+
+ // Output:
+ // goframe_is_very_nice_to_use
+}
+
+func ExampleCaseSnakeFirstUpper() {
+ var (
+ str = `GoframeIsVeryNiceToUse`
+ rsStr = gstr.CaseSnakeFirstUpper(str)
+ )
+
+ fmt.Println(rsStr)
+
+ // Output:
+ // goframe_is_very_nice_to_use
+}
+
+func ExampleCaseSnakeScreaming() {
+ var (
+ str = `goframe_is Very Nice.to-use`
+ rsStr = gstr.CaseSnakeScreaming(str)
+ )
+
+ fmt.Println(rsStr)
+
+ // Output:
+ // GOFRAME_IS_VERY_NICE_TO_USE
+}
+
+func ExampleChr() {
+ var (
+ ascii = 65
+ rsStr = gstr.Chr(ascii)
+ )
+ fmt.Println(rsStr)
+
+ // Output:
+ // A
+}
+
+func ExampleChunkSplit() {
+ {
+ var (
+ body = `1234`
+ chunkLen = 2
+ end = "#"
+ rsStr = gstr.ChunkSplit(body, chunkLen, end)
+ )
+
+ fmt.Println(rsStr)
+ }
+
+ {
+ var (
+ body = `我爱Goframe`
+ chunkLen = 1
+ end = "-"
+ rsStr = gstr.ChunkSplit(body, chunkLen, end)
+ )
+ fmt.Println(rsStr)
+ }
+
+ {
+ var (
+ body = `1234`
+ chunkLen = 1
+ end = ""
+ rsStr = gstr.ChunkSplit(body, chunkLen, end)
+ )
+ fmt.Println(rsStr)
+ }
+
+ // May Output:
+ // 12#34#
+ // 我-爱-G-o-f-r-a-m-e-
+ // "1\r\n2\r\n3\r\n4\r\n"
+}
+
+func ExampleCompare() {
+ {
+ var (
+ a = "C"
+ b = "C"
+ rsStr = gstr.Compare(a, b)
+ )
+
+ fmt.Println(rsStr)
+ }
+
+ {
+ var (
+ a = "A"
+ b = "B"
+ rsStr = gstr.Compare(a, b)
+ )
+ fmt.Println(rsStr)
+ }
+
+ {
+ var (
+ a = "C"
+ b = "B"
+ rsStr = gstr.Compare(a, b)
+ )
+ fmt.Println(rsStr)
+ }
+
+ // Output:
+ // 0
+ // -1
+ // 1
+}
+
+func ExampleCompareVersion() {
+ {
+ var (
+ a = "v2.11.9"
+ b = "v2.10.8"
+
+ rsStr = gstr.CompareVersion(a, b)
+ )
+
+ fmt.Println(rsStr)
+ }
+
+ {
+ var (
+ a = "A.10.8"
+ b = "A.19.7"
+ rsStr = gstr.CompareVersion(a, b)
+ )
+ fmt.Println(rsStr)
+ }
+
+ {
+ var (
+ a = "2.8.beta"
+ b = "2.8"
+ rsStr = gstr.CompareVersion(a, b)
+ )
+ fmt.Println(rsStr)
+ }
+
+ // Output:
+ // 1
+ // -1
+ // 0
+}
+
+func ExampleCompareVersionGo() {
+
+ {
+ var (
+ a = "v2.11.9"
+ b = "v2.10.8"
+ rsStr = gstr.CompareVersionGo(a, b)
+ )
+ fmt.Println(rsStr)
+ }
+
+ {
+ var (
+ a = "v0.0.2-20180626092158-b2ccc119800e"
+ b = "v1.0.1-20190626092158-b2ccc519800e"
+ rsStr = gstr.CompareVersionGo(a, b)
+ )
+ fmt.Println(rsStr)
+ }
+
+ {
+ var (
+ a = "v4.20.1"
+ b = "v4.20.1+incompatible"
+ rsStr = gstr.CompareVersionGo(a, b)
+ )
+ fmt.Println(rsStr)
+ }
+
+ // Output:
+ // 1
+ // -1
+ // 0
+}
+
+func ExampleContains() {
+ {
+ var (
+ str = `goframe_is Very Nice.to-use`
+ substr = `goframe`
+ rsStr = gstr.Contains(str, substr)
+ )
+
+ fmt.Println(rsStr)
+ }
+
+ {
+ var (
+ str = `goframe_is Very Nice.to-use`
+ substr = `Goframe`
+ rsStr = gstr.Contains(str, substr)
+ )
+ fmt.Println(rsStr)
+ }
+
+ // Output:
+ // true
+ // false
+}
+
+func ExampleContainsAny() {
+ {
+ var (
+ s = `goframe_is Very Nice.to-use`
+ chars = "g"
+ rsStr = gstr.ContainsAny(s, chars)
+ )
+
+ fmt.Println(rsStr)
+ }
+
+ {
+ var (
+ s = `goframe_is Very Nice.to-use`
+ chars = "G"
+ rsStr = gstr.ContainsAny(s, chars)
+ )
+ fmt.Println(rsStr)
+ }
+
+ {
+ var (
+ s = `goframe_is Very Nice.to-use`
+ chars = "Nice"
+ rsStr = gstr.ContainsAny(s, chars)
+ )
+ fmt.Println(rsStr)
+ }
+
+ // Output:
+ // true
+ // false
+ // true
+}
+
+func ExampleContainsI() {
+ {
+ var (
+ str = `goframe_is Very Nice.to-use`
+ substr = "go"
+ rsStr = gstr.ContainsI(str, substr)
+ )
+
+ fmt.Println(rsStr)
+ }
+
+ {
+ var (
+ str = `goframe_is Very Nice.to-use`
+ substr = "Go"
+ rsStr = gstr.ContainsI(str, substr)
+ )
+ fmt.Println(rsStr)
+ }
+
+ {
+ var (
+ str = `goframe_is Very Nice.to-use`
+ substr = "Golang"
+ rsStr = gstr.ContainsI(str, substr)
+ )
+ fmt.Println(rsStr)
+ }
+
+ // Output:
+ // true
+ // true
+ // false
+}
+
+func ExampleCount() {
+ {
+ var (
+ str = `goframe_is Very Nice.to-use`
+ substr = "goframe"
+ rsStr = gstr.Count(str, substr)
+ )
+ fmt.Println(rsStr)
+ }
+
+ {
+ var (
+ str = `goframe_is Very Nice.to-use`
+ substr = "golang"
+ rsStr = gstr.Count(str, substr)
+ )
+ fmt.Println(rsStr)
+ }
+
+ // Output:
+ // 1
+ // 0
+}
+
+func ExampleCountChars() {
+ {
+ var (
+ str = `goframe_is Very Nice.to-use`
+ rsStr = gstr.CountChars(str)
+ )
+ fmt.Println(rsStr)
+ }
+
+ {
+ var (
+ str = `goframe_is Very Nice.to-use`
+ rsStr = gstr.CountChars(str, true)
+ )
+ fmt.Println(rsStr)
+ }
+
+ // May Output:
+ // map[ :2 -:1 .:1 N:1 V:1 _:1 a:1 c:1 e:4 f:1 g:1 i:2 m:1 o:2 r:2 s:2 t:1 u:1 y:1]
+ // map[-:1 .:1 N:1 V:1 _:1 a:1 c:1 e:4 f:1 g:1 i:2 m:1 o:2 r:2 s:2 t:1 u:1 y:1]
+
+}
+
+func ExampleCountI() {
+ {
+ var (
+ s = `goframe_is Very Nice.to-use`
+ substr = "goframe"
+ rsStr = gstr.CountI(s, substr)
+ )
+
+ fmt.Println(rsStr)
+ }
+
+ {
+ var (
+ s = `goframe_is Very Nice.to-use`
+ substr = "Goframe"
+ rsStr = gstr.CountI(s, substr)
+ )
+
+ fmt.Println(rsStr)
+ }
+
+ {
+ var (
+ s = `Goframe_is Very Nice.to-use`
+ substr = "golang"
+ rsStr = gstr.CountI(s, substr)
+ )
+ fmt.Println(rsStr)
+ }
+
+ // Output:
+ // 1
+ // 1
+ // 0
+}
+
+func ExampleCountWords() {
+ var (
+ str = `goframe is Very Nice to use ! goframe Very Nice !`
+ rsStr = gstr.CountWords(str)
+ )
+
+ fmt.Println(rsStr)
+
+ // Output:
+ // map[!:2 Nice:2 Very:2 goframe:2 is:1 to:1 use:1]
+}
+
+func ExampleEqual() {
+ {
+ var (
+ a = `A`
+ b = `a`
+ rsStr = gstr.Equal(a, b)
+ )
+
+ fmt.Println(rsStr)
+ }
+
+ {
+ var (
+ a = `A`
+ b = `A`
+ rsStr = gstr.Equal(a, b)
+ )
+ fmt.Println(rsStr)
+ }
+
+ {
+ var (
+ a = `C`
+ b = `B`
+ rsStr = gstr.Equal(a, b)
+ )
+ fmt.Println(rsStr)
+ }
+
+ // Output:
+ // true
+ // true
+ // false
+}
+
+func ExampleExplode() {
+ var (
+ str = `goframe_is_Very_Nice_to_use`
+ delimiter = "_"
+ rsStr = gstr.Explode(delimiter, str)
+ )
+
+ fmt.Printf(`%#v`, rsStr)
+
+ // Output:
+ // []string{"goframe", "is", "Very", "Nice", "to", "use"}
+}
+
+func ExampleFields() {
+ var (
+ str = `goframe is Very Nice to-use`
+ rsStr = gstr.Fields(str)
+ )
+
+ fmt.Printf(`%#v`, rsStr)
+
+ // Output:
+ // []string{"goframe", "is", "Very", "Nice", "to-use"}
+}
+
+func ExampleHasPrefix() {
+ {
+ var (
+ s = `goframe_is Very Nice.to-use`
+ prefix = "goframe"
+ rsStr = gstr.HasPrefix(s, prefix)
+ )
+
+ fmt.Println(rsStr)
+ }
+
+ {
+ var (
+ s = `goframe_is Very Nice.to-use`
+ prefix = "Goframe"
+ rsStr = gstr.HasPrefix(s, prefix)
+ )
+ fmt.Println(rsStr)
+ }
+
+ // Output:
+ // true
+ // false
+}
+
+func ExampleHasSuffix() {
+ {
+ var (
+ s = `goframe_is Very Nice.to-use`
+ prefix = "use"
+ rsStr = gstr.HasSuffix(s, prefix)
+ )
+ fmt.Println(rsStr)
+ }
+
+ {
+ var (
+ s = `goframe_is Very Nice.to-use`
+ prefix = "Use"
+ rsStr = gstr.HasSuffix(s, prefix)
+ )
+ fmt.Println(rsStr)
+ }
+
+ // Output:
+ // true
+ // false
+}
+
+func ExampleHideStr() {
+ {
+ var (
+ str = `13800138000`
+ percent = 40
+ hide = `*`
+ rsStr = gstr.HideStr(str, percent, hide)
+ )
+ fmt.Println(rsStr)
+ }
+
+ {
+ var (
+ str = `AAAAAAAAAA`
+ percent = 60
+ hide = `@`
+ rsStr = gstr.HideStr(str, percent, hide)
+ )
+ fmt.Println(rsStr)
+ }
+
+ // Output:
+ // 138****8000
+ // AA@@@@@@AA
+}
+
+func ExampleImplode() {
+ var (
+ pieces = []string{"goframe", "is", "Very", "Nice", "to", "use"}
+ glue = "-"
+ rsStr = gstr.Implode(glue, pieces)
+ )
+ fmt.Println(rsStr)
+
+ // Output:
+ // goframe-is-Very-Nice-to-use
+}
+
+func ExampleInArray() {
+ {
+ var (
+ a = []string{"goframe", "is", "Very", "Nice", "to", "use"}
+ s = "goframe"
+ rsStr = gstr.InArray(a, s)
+ )
+ fmt.Println(rsStr)
+ }
+
+ {
+ var (
+ a = []string{"goframe", "is", "Very", "Nice", "to", "use"}
+ s = "golang"
+ rsStr = gstr.InArray(a, s)
+ )
+ fmt.Println(rsStr)
+ }
+
+ // Output:
+ // true
+ // false
+}
+
+func ExampleIsLetterLower() {
+ {
+ var (
+ b byte = 65 // In ASCII is "a"
+ rsStr = gstr.IsLetterLower(b)
+ )
+ fmt.Println(rsStr)
+ }
+
+ {
+ var (
+ b byte = 97 // In ASCII is "A"
+ rsStr = gstr.IsLetterLower(b)
+ )
+ fmt.Println(rsStr)
+ }
+
+ // Output:
+ // false
+ // true
+}
+
+func ExampleIsLetterUpper() {
+ {
+ var (
+ b byte = 65 // In ASCII is "a"
+ rsStr = gstr.IsLetterUpper(b)
+ )
+ fmt.Println(rsStr)
+ }
+
+ {
+ var (
+ b byte = 97 // In ASCII is "A"
+ rsStr = gstr.IsLetterUpper(b)
+ )
+ fmt.Println(rsStr)
+ }
+
+ // Output:
+ // true
+ // false
+}
+
+func ExampleIsNumeric() {
+ {
+ var (
+ s = "88"
+ rsStr = gstr.IsNumeric(s)
+ )
+ fmt.Println(rsStr)
+ }
+
+ {
+ var (
+ s = "aa66bb88"
+ rsStr = gstr.IsNumeric(s)
+ )
+ fmt.Println(rsStr)
+ }
+
+ {
+ var (
+ s = "3.1415926"
+ rsStr = gstr.IsNumeric(s)
+ )
+ fmt.Println(rsStr)
+ }
+
+ // Output:
+ // true
+ // false
+ // true
+}
+
+func ExampleIsSubDomain() {
+ {
+ var (
+ subDomain = `s.goframe.org`
+ mainDomain = `goframe.org`
+ rsStr = gstr.IsSubDomain(subDomain, mainDomain)
+ )
+ fmt.Println(rsStr)
+ }
+
+ {
+ var (
+ subDomain = `s.s.goframe.org`
+ mainDomain = `goframe.org`
+ rsStr = gstr.IsSubDomain(subDomain, mainDomain)
+ )
+ fmt.Println(rsStr)
+ }
+
+ {
+ var (
+ subDomain = `s.s.goframe.org`
+ mainDomain = `*goframe.org`
+ rsStr = gstr.IsSubDomain(subDomain, mainDomain)
+ )
+ fmt.Println(rsStr)
+ }
+
+ // Output:
+ // true
+ // true
+ // false
+}
+
+func ExampleJoin() {
+ var (
+ array = []string{"goframe", "is", "Very", "Nice", "to", "use"}
+ sep = `,`
+ rsStr = gstr.Join(array, sep)
+ )
+ fmt.Println(rsStr)
+
+ // Output:
+ // goframe,is,Very,Nice,to,use
+}
+
+func ExampleJoinAny() {
+ {
+ var (
+ sep = `@`
+ arr1 = []string{"goframe", "is", "Very", "Nice", "to", "use"}
+ rsStr = gstr.JoinAny(arr1, sep)
+ )
+ fmt.Println(rsStr)
+ }
+
+ {
+ var (
+ sep = `,`
+ arr2 = []int{99, 73, 85, 66}
+ rsStr2 = gstr.JoinAny(arr2, sep)
+ )
+ fmt.Println(rsStr2)
+ }
+
+ {
+ var (
+ sep = `,`
+ arr3 = []interface{}{
+ "Mary",
+ 18,
+ 99.5,
+ "
",
+ "Jack",
+ 19,
+ 66.5,
+ }
+ rsStr3 = gstr.JoinAny(arr3, sep)
+ )
+ fmt.Println(rsStr3)
+ }
+
+ {
+ type StructA struct {
+ Name string
+ Age int
+ }
+ var (
+ sep = `|`
+
+ arr4 = []StructA{
+ {"Mary", 18},
+ {"Jack", 18},
+ {"Lucy", 18},
+ }
+ rsStr = gstr.JoinAny(arr4, sep)
+ )
+ fmt.Println(rsStr)
+ }
+
+ // Output:
+ // goframe@is@Very@Nice@to@use
+ // 99,73,85,66
+ // Mary,18,99.5,
,Jack,19,66.5
+ // {"Name":"Mary","Age":18}|{"Name":"Jack","Age":18}|{"Name":"Lucy","Age":18}
+}
+
+func ExampleLcFirst() {
+ {
+ var (
+ str = `Goframe`
+ rsStr = gstr.LcFirst(str)
+ )
+ fmt.Println(rsStr)
+ }
+
+ {
+ var (
+ str = `Goframe is Very Nice to use.`
+ rsStr = gstr.LcFirst(str)
+ )
+ fmt.Println(rsStr)
+ }
+
+ // Output:
+ // goframe
+ // goframe is Very Nice to use.
+}
+
+func ExampleLenRune() {
+ {
+ var (
+ str = `goframe is Very Nice to use`
+ rsStr = gstr.LenRune(str)
+ )
+ fmt.Println(rsStr)
+ }
+
+ {
+ var (
+ str = `123 4567 890`
+ rsStr = gstr.LenRune(str)
+ )
+ fmt.Println(rsStr)
+ }
+
+ {
+ var (
+ str = `Goframe是一个非常好用的Go语言框架!`
+ rsStr = gstr.LenRune(str)
+ )
+ fmt.Println(rsStr)
+ }
+
+ // Output:
+ // 27
+ // 12
+ // 22
+}
+
+func ExampleLevenshtein() {
+ {
+ var (
+ str1 = "Hello World"
+ str2 = "ello World"
+ costIns = 1
+ costRep = 1
+ costDel = 1
+ rsStr = gstr.Levenshtein(str1, str2, costIns, costRep, costDel)
+ )
+
+ fmt.Println(rsStr)
+ }
+
+ {
+ var (
+ str1 = "Hello World"
+ str2 = "ello Worles"
+ costIns = 10
+ costRep = 20
+ costDel = 30
+ rsStr = gstr.Levenshtein(str1, str2, costIns, costRep, costDel)
+ )
+ fmt.Println(rsStr)
+ }
+
+ // Output:
+ // 1
+ // 60
+}
+
+func ExampleNl2Br() {
+ var (
+ str = `goframe
+is
+Very
+Nice
+to
+use`
+ rsStr = gstr.Nl2Br(str)
+ )
+
+ fmt.Println(rsStr)
+
+ // Output:
+ // goframe
is
Very
Nice
to
use
+}
+
+func ExampleNumberFormat() {
+
+ {
+ var (
+ number float64 = 123456
+ decimals = 2
+ decPoint = "."
+ thousandsSep = ","
+ rsStr = gstr.NumberFormat(number, decimals, decPoint, thousandsSep)
+ )
+ fmt.Println(rsStr)
+ }
+
+ {
+ var (
+ number = 1234.56
+ decimals = 1
+ decPoint = ","
+ thousandsSep = " "
+ rsStr = gstr.NumberFormat(number, decimals, decPoint, thousandsSep)
+ )
+ fmt.Println(rsStr)
+ }
+
+ {
+ var (
+ number = 1234.5678
+ decimals = 3
+ decPoint = "."
+ thousandsSep = ","
+ rsStr = gstr.NumberFormat(number, decimals, decPoint, thousandsSep)
+ )
+ fmt.Println(rsStr)
+ }
+
+ // Output:
+ // 123,456.00
+ // 1 234,6
+ // 1,234.568
+}
+
+func ExampleOctStr() {
+ var (
+ str = `\346\200\241`
+ rsStr = gstr.OctStr(str)
+ )
+ fmt.Println(rsStr)
+
+ // Output:
+ // 怡
+}
+
+// '103' is the 'g' in ASCII
+func ExampleOrd() {
+ var (
+ str = `goframe`
+ rsStr = gstr.Ord(str)
+ )
+
+ fmt.Println(rsStr)
+
+ // Output:
+ // 103
+
+}
+
+func ExampleParse() {
+ {
+ var (
+ str = `v1=m&v2=n`
+ rsStr, _ = gstr.Parse(str)
+ )
+ fmt.Println(rsStr)
+ }
+
+ {
+ var (
+ str = `v[a][a]=m&v[a][b]=n`
+ rsStr, _ = gstr.Parse(str)
+ )
+ fmt.Println(rsStr)
+ }
+
+ {
+ // The form of nested Slice is not yet supported.
+ var str = `v[][]=m&v[][]=n`
+ rsStr, err := gstr.Parse(str)
+ if err != nil {
+ panic(err)
+ }
+ fmt.Println(rsStr)
+ }
+
+ {
+ // This will produce an error.
+ var str = `v=m&v[a]=n`
+ rsStr, err := gstr.Parse(str)
+ if err != nil {
+ println(err)
+ }
+ fmt.Println(rsStr)
+ }
+
+ {
+ var (
+ str = `a .[[b=c`
+ rsStr, _ = gstr.Parse(str)
+ )
+ fmt.Println(rsStr)
+ }
+
+ // May Output:
+ // map[v1:m v2:n]
+ // map[v:map[a:map[a:m b:n]]]
+ // map[v:map[]]
+ // Error: expected type 'map[string]interface{}' for key 'v', but got 'string'
+ // map[]
+ // map[a___[b:c]
+}
+
+func ExamplePos() {
+ {
+ var (
+ haystack = `goframe_is Very Nice.to-use`
+ needle = `Nice`
+ rsStr = gstr.Pos(haystack, needle)
+ )
+ fmt.Println(rsStr)
+ }
+
+ {
+ var (
+ haystack = `goframe_is Very Nice.to-use`
+ needle = `Nice`
+ startOffset = 16
+ rsStr = gstr.Pos(haystack, needle, startOffset)
+ )
+ fmt.Println(rsStr)
+ }
+
+ {
+ var (
+ haystack = `goframe_is Very Nice.to-use`
+ needle = `Nice`
+ startOffset = 17
+ rsStr = gstr.Pos(haystack, needle, startOffset)
+ )
+ fmt.Println(rsStr)
+ }
+
+ {
+ var (
+ haystack = `goframe_is Very Nice.to-use`
+ needle = `nice`
+ rsStr = gstr.Pos(haystack, needle)
+ )
+ fmt.Println(rsStr)
+ }
+
+ // Output:
+ // 16
+ // 16
+ // -1
+ // -1
+}
+
+func ExamplePosI() {
+ {
+ var (
+ haystack = `goframe_is Very Nice.to-use`
+ needle = `Nice`
+ rsStr = gstr.PosI(haystack, needle)
+ )
+
+ fmt.Println(rsStr)
+ }
+
+ {
+ var (
+ haystack = `goframe_is Very Nice.to-use`
+ needle = `Nice`
+ startOffset = 16
+ rsStr = gstr.PosI(haystack, needle, startOffset)
+ )
+ fmt.Println(rsStr)
+ }
+
+ {
+ var (
+ haystack = `goframe_is Very Nice.to-use`
+ needle = `Nice`
+ startOffset = 17
+ rsStr = gstr.PosI(haystack, needle, startOffset)
+ )
+ fmt.Println(rsStr)
+ }
+
+ {
+ var (
+ haystack = `goframe_is Very Nice.to-use`
+ needle = `nice`
+ rsStr = gstr.PosI(haystack, needle)
+ )
+ fmt.Println(rsStr)
+ }
+
+ // Output:
+ // 16
+ // 16
+ // -1
+ // 16
+}
+
+func ExamplePosIRune() {
+ {
+ var (
+ haystack = `goframe_is Very Nice.to-use`
+ needle = `Nice`
+ rsStr = gstr.PosIRune(haystack, needle)
+ )
+
+ fmt.Println(rsStr)
+ }
+
+ {
+ var (
+ haystack = `Goframe是个非常好用的框架.`
+ needle = `Nice`
+ startOffset = 16
+ rsStr = gstr.PosIRune(haystack, needle, startOffset)
+ )
+ fmt.Println(rsStr)
+ }
+
+ {
+ var (
+ haystack = `Goframe是个非常好用的框架.`
+ needle = `Nice`
+ startOffset = 17
+ rsStr = gstr.PosIRune(haystack, needle, startOffset)
+ )
+ fmt.Println(rsStr)
+ }
+
+ {
+ var (
+ haystack = `Goframe是个非常好用的框架.`
+ needle = `nice`
+ rsStr = gstr.PosIRune(haystack, needle)
+ )
+ fmt.Println(rsStr)
+ }
+
+ // Output:
+ // 16
+ // -1
+ // -1
+ // -1
+}
+
+func ExamplePosR() {
+ {
+ var (
+ haystack = `goframe_is Very Nice.to-use`
+ needle = `Nice`
+ rsStr = gstr.PosR(haystack, needle)
+ )
+ fmt.Println(rsStr)
+ }
+
+ {
+ var (
+ haystack = `goframe_is Very Nice.to-use`
+ needle = `Nice`
+ startOffset = 16
+ rsStr = gstr.PosR(haystack, needle, startOffset)
+ )
+ fmt.Println(rsStr)
+ }
+
+ {
+ var (
+ haystack = `goframe_is Very Nice.to-use`
+ needle = `Nice`
+ startOffset = 17
+ rsStr = gstr.PosR(haystack, needle, startOffset)
+ )
+ fmt.Println(rsStr)
+ }
+
+ {
+ var (
+ haystack = `goframe_is Very Nice.to-use`
+ needle = `nice`
+ rsStr = gstr.PosR(haystack, needle)
+ )
+ fmt.Println(rsStr)
+ }
+
+ // Output:
+ // 16
+ // 16
+ // -1
+ // -1
+}
+
+func ExamplePosRI() {
+ {
+ var (
+ haystack = `goframe_is Very Nice.to-use`
+ needle = `Nice`
+ rsStr = gstr.PosRI(haystack, needle)
+ )
+ fmt.Println(rsStr)
+ }
+
+ {
+ var (
+ haystack = `goframe_is Very Nice.to-use`
+ needle = `Nice`
+ startOffset = 16
+ rsStr = gstr.PosRI(haystack, needle, startOffset)
+ )
+ fmt.Println(rsStr)
+ }
+
+ {
+ var (
+ haystack = `goframe_is Very Nice.to-use`
+ needle = `Nice`
+ startOffset = 17
+ rsStr = gstr.PosRI(haystack, needle, startOffset)
+ )
+ fmt.Println(rsStr)
+ }
+
+ {
+ var (
+ haystack = `goframe_is Very Nice.to-use`
+ needle = `nice`
+ rsStr = gstr.PosRI(haystack, needle)
+ )
+ fmt.Println(rsStr)
+ }
+
+ // Output:
+ // 16
+ // 16
+ // -1
+ // 16
+
+}
+
+func ExamplePosRIRune() {
+ {
+ var (
+ haystack = `Goframe是个非常好用的框架`
+ needle = `好用`
+ rsStr = gstr.PosRIRune(haystack, needle)
+ )
+
+ fmt.Println(rsStr)
+ }
+
+ {
+ var (
+ haystack = `Goframe是个非常好用的框架`
+ needle = `框架`
+ startOffset = 16
+ rsStr = gstr.PosRIRune(haystack, needle, startOffset)
+ )
+ fmt.Println(rsStr)
+ }
+
+ {
+ var (
+ haystack = `Goframe是个非常好用的框架`
+ needle = `golang`
+ startOffset = 17
+ rsStr = gstr.PosRIRune(haystack, needle, startOffset)
+ )
+ fmt.Println(rsStr)
+ }
+
+ {
+ var (
+ haystack = `Goframe是个非常好用的框架`
+ needle = `goframe`
+ rsStr = gstr.PosRIRune(haystack, needle)
+ )
+ fmt.Println(rsStr)
+ }
+
+ // Output:
+ // 11
+ // 14
+ // -1
+ // 0
+}
+
+func ExamplePosRRune() {
+ {
+ var (
+ haystack = `goframe_is Very Nice.to-use`
+ needle = `Nice`
+ rsStr = gstr.PosRRune(haystack, needle)
+ )
+ fmt.Println(rsStr)
+ }
+
+ {
+ var (
+ haystack = `goframe_is Very Nice.to-use`
+ needle = `Nice`
+ startOffset = 16
+ rsStr = gstr.PosRRune(haystack, needle, startOffset)
+ )
+ fmt.Println(rsStr)
+ }
+
+ {
+ var (
+ haystack = `Goframe是中国开发者的福利.`
+ needle = `Nice`
+ startOffset = 17
+ rsStr = gstr.PosRRune(haystack, needle, startOffset)
+ )
+ fmt.Println(rsStr)
+ }
+
+ {
+ var (
+ haystack = `Goframe是中国开发者的福利.`
+ needle = `开发者`
+ rsStr = gstr.PosRRune(haystack, needle)
+ )
+ fmt.Println(rsStr)
+ }
+
+ // Output:
+ // 16
+ // 16
+ // -1
+ // 10
+}
+
+func ExamplePosRune() {
+ {
+ var (
+ haystack = `goframe_is Very Nice.to-use`
+ needle = `Nice`
+ rsStr = gstr.PosRune(haystack, needle)
+ )
+ fmt.Println(rsStr)
+ }
+
+ {
+ var (
+ haystack = `我喜欢Goframe框架`
+ needle = `框架`
+ startOffset = 16
+ rsStr = gstr.PosRune(haystack, needle, startOffset)
+ )
+ fmt.Println(rsStr)
+ }
+
+ {
+ var (
+ haystack = `我喜欢Goframe框架`
+ needle = `框架`
+ startOffset = 17
+ rsStr = gstr.PosRune(haystack, needle, startOffset)
+ )
+ fmt.Println(rsStr)
+ }
+
+ {
+ var (
+ haystack = `我喜欢Goframe框架`
+ needle = `goframe`
+ rsStr = gstr.PosRune(haystack, needle)
+ )
+ fmt.Println(rsStr)
+ }
+
+ // Output:
+ // 16
+ // 10
+ // -1
+ // -1
+}
+
+func ExampleQuoteMeta() {
+ {
+ var (
+ str = `.\+?[^]()`
+ rsStr = gstr.QuoteMeta(str)
+ )
+ fmt.Println(rsStr)
+ }
+
+ {
+ var (
+ str = `https://goframe.org/pages/viewpage.action?pageId=1114327`
+ rsStr = gstr.QuoteMeta(str)
+ )
+ fmt.Println(rsStr)
+ }
+
+ // Output:
+ // \.\\\+\?\[\^\]\(\)
+ // https://goframe\.org/pages/viewpage\.action\?pageId=1114327
+
+}
+
+func ExampleRepeat() {
+ var (
+ input = `goframe `
+ multiplier = 3
+ rsStr = gstr.Repeat(input, multiplier)
+ )
+ fmt.Println(rsStr)
+
+ // Output:
+ // goframe goframe goframe
+}
+
+func ExampleReplace() {
+ {
+ var (
+ origin = `goframe_is_Very_Nice_to_use!`
+ search = `_`
+ replace = `+`
+ rsStr = gstr.Replace(origin, search, replace)
+ )
+ fmt.Println(rsStr)
+ }
+
+ {
+ var (
+ origin = `goframe_is_Very_Nice_to_use!`
+ search = `_`
+ replace = `+`
+ count = 2
+ rsStr = gstr.Replace(origin, search, replace, count)
+ )
+ fmt.Println(rsStr)
+ }
+
+ // Output:
+ // goframe+is+Very+Nice+to+use!
+ // goframe+is+Very_Nice_to_use!
+}
+
+func ExampleReplaceByArray() {
+ {
+ var (
+ origin = `Golang is Very Good`
+ array = []string{"o", "O"}
+ rsStr = gstr.ReplaceByArray(origin, array)
+ )
+ fmt.Println(rsStr)
+ }
+
+ {
+ var (
+ origin = `Golang is Very Good`
+ array = []string{"Golang", "Goframe", "Good", "Nice"}
+ rsStr = gstr.ReplaceByArray(origin, array)
+ )
+ fmt.Println(rsStr)
+ }
+
+ // Output:
+ // GOlang is Very GOOd
+ // Goframe is Very Nice
+}
+
+func ExampleReplaceByMap() {
+ {
+ var (
+ origin = `Golang is Very Good`
+ replaces = map[string]string{
+ "Golang": "Goframe",
+ "Good": "Nice",
+ }
+ rsStr = gstr.ReplaceByMap(origin, replaces)
+ )
+ fmt.Println(rsStr)
+ }
+
+ {
+ var (
+ origin = `Golang is Very Good`
+ replaces = map[string]string{
+ "golang": "Goframe",
+ "good": "Nice",
+ }
+ rsStr = gstr.ReplaceByMap(origin, replaces)
+ )
+ fmt.Println(rsStr)
+ }
+
+ // Output:
+ // Goframe is Very Nice
+ // Golang is Very Good
+}
+
+func ExampleReplaceI() {
+ var (
+ origin = `goframe is Very Nice to use`
+ search = `Goframe`
+ replace = `golang`
+ count = 3
+ rsStr = gstr.ReplaceI(origin, search, replace, count)
+ )
+ fmt.Println(rsStr)
+
+ // Output:
+ // golang is Very Nice to use
+}
+
+func ExampleReplaceIByArray() {
+ var (
+ origin = `golang is very nice`
+ array = []string{"Golang", "GoFrame", "Nice", "GOOD"}
+ rsStr = gstr.ReplaceIByArray(origin, array)
+ )
+
+ fmt.Println(rsStr)
+
+ // Output:
+ // GoFrame is very GOOD
+}
+
+func ExampleReplaceIByMap() {
+ {
+ var (
+ origin = `Golang is Very Good`
+ replaces = map[string]string{
+ "Golang": "Goframe",
+ "Good": "Nice",
+ }
+ rsStr = gstr.ReplaceIByMap(origin, replaces)
+ )
+ fmt.Println(rsStr)
+ }
+
+ {
+ var (
+ origin = `Golang is Very Good`
+ replaces = map[string]string{
+ "golang": "Goframe",
+ "good": "Nice",
+ }
+ rsStr = gstr.ReplaceIByMap(origin, replaces)
+ )
+ fmt.Println(rsStr)
+ }
+
+ // Output:
+ // Goframe is Very Nice
+ // Goframe is Very Nice
+}
+
+func ExampleReverse() {
+ var (
+ str = `123456`
+ rsStr = gstr.Reverse(str)
+ )
+ fmt.Println(rsStr)
+
+ // Output:
+ // 654321
+}
+
+func ExampleSearchArray() {
+ {
+ var (
+ a = []string{"goframe", "is", "Very", "Nice"}
+ s = `goframe`
+ rsStr = gstr.SearchArray(a, s)
+ )
+ fmt.Println(rsStr)
+ }
+
+ {
+ var (
+ a = []string{"goframe", "is", "Very", "Nice"}
+ s = `Very`
+ rsStr = gstr.SearchArray(a, s)
+ )
+ fmt.Println(rsStr)
+ }
+
+ {
+ var (
+ a = []string{"goframe", "is", "Very", "Nice"}
+ s = `use`
+ rsStr = gstr.SearchArray(a, s)
+ )
+ fmt.Println(rsStr)
+ }
+
+ // Output:
+ // 0
+ // 2
+ // -1
+}
+
+func ExampleShuffle() {
+ var (
+ str = `abcdefg`
+ rsStr = gstr.Shuffle(str)
+ )
+ fmt.Println(rsStr)
+
+ // May Output:
+ // efcgbda
+}
+
+func ExampleSimilarText() {
+ {
+ var (
+ percent *float64
+ first = `goframe_is`
+ second = `go-nice`
+ rsStr = gstr.SimilarText(first, second, percent)
+ )
+ fmt.Println(rsStr)
+ }
+
+ {
+ var (
+ first = `AaBbCcDd`
+ second = `ad`
+ )
+ p := 0.80
+ rsStr := gstr.SimilarText(first, second, &p)
+ fmt.Println(rsStr)
+ }
+
+ // Output:
+ // 3
+ // 2
+}
+
+func ExampleSoundex() {
+ {
+ var (
+ str = `Euler`
+ str2 = `Ellery`
+ rsStr = gstr.Soundex(str)
+ rsStr2 = gstr.Soundex(str2)
+ )
+ fmt.Println(rsStr, rsStr2)
+ }
+
+ {
+ var (
+ str = `Gauss`
+ str2 = `Ghosh`
+ rsStr = gstr.Soundex(str)
+ rsStr2 = gstr.Soundex(str2)
+ )
+ fmt.Println(rsStr, rsStr2)
+ }
+
+ {
+ var (
+ str = `Lloyd`
+ str2 = `Ladd`
+ rsStr = gstr.Soundex(str)
+ rsStr2 = gstr.Soundex(str2)
+ )
+ fmt.Println(rsStr, rsStr2)
+ }
+
+ // Output:
+ // E406 E406
+ // G020 G020
+ // L030 L030
+}
+
+func ExampleSplit() {
+ var (
+ str = `GoFrame_Nice`
+ delimiter = `_`
+ rsStr = gstr.Split(str, delimiter)
+ )
+ fmt.Printf(`%#v`, rsStr)
+
+ // Output:
+ // []string{"GoFrame", "Nice"}
+}
+
+func ExampleSplitAndTrim() {
+ var (
+ str = ` goframe, is, Very ,Nice ,to, use`
+ delimiter = `,`
+ characterMask = ` `
+ rsStr = gstr.SplitAndTrim(str, delimiter, characterMask)
+ )
+ fmt.Printf("%#v", rsStr)
+
+ // Output:
+ // []string{"goframe", "is", "Very", "Nice", "to", "use"}
+}
+
+func ExampleStr() {
+ var (
+ haystack = `xxx.jpg`
+ needle = `.`
+ rsStr = gstr.Str(haystack, needle)
+ )
+ fmt.Println(rsStr)
+
+ // Output:
+ // .jpg
+}
+
+func ExampleStrEx() {
+ var (
+ haystack = `https://goframe.org/index.html?a=1&b=2`
+ needle = `?`
+ rsStr = gstr.StrEx(haystack, needle)
+ )
+ fmt.Println(rsStr)
+
+ // Output:
+ // a=1&b=2
+}
+
+func ExampleStrLimit() {
+ {
+ var (
+ str = `1234567890.png`
+ length = 4
+ suffix = `.jpg`
+ rsStr = gstr.StrLimit(str, length, suffix)
+ )
+ fmt.Println(rsStr)
+ }
+
+ {
+ var (
+ str = `123456789`
+ length = 3
+ suffix = `...`
+ rsStr = gstr.StrLimit(str, length, suffix)
+ )
+ fmt.Println(rsStr)
+ }
+
+ // Output:
+ // 1234.jpg
+ // 123...
+}
+
+func ExampleStrLimitRune() {
+ {
+ var (
+ str = `123456789`
+ length = 5
+ suffix = "ABCD"
+ rsStr = gstr.StrLimitRune(str, length, suffix)
+ )
+ fmt.Println(rsStr)
+ }
+
+ {
+ var (
+ str = `goframe是一个好用的框架她提供了非常丰富的工具给使用者.`
+ length = 15
+ suffix = "!"
+ rsStr = gstr.StrLimitRune(str, length, suffix)
+ )
+ fmt.Println(rsStr)
+ }
+
+ // Output:
+ // 12345ABCD
+ // goframe是一个好用的框架!
+}
+
+func ExampleStrTill() {
+ {
+ var (
+ haystack = `goframe是一个好用的框架,她提供了非常丰富的工具给使用者.`
+ needle = `,`
+ rsStr = gstr.StrTill(haystack, needle)
+ )
+ fmt.Println(rsStr)
+ }
+
+ {
+ var (
+ haystack = `https://goframe.org/index.html?test=123456`
+ needle = `?`
+ rsStr = gstr.StrTill(haystack, needle)
+ )
+ fmt.Println(rsStr)
+ }
+
+ // Output:
+ // goframe是一个好用的框架,
+ // https://goframe.org/index.html?
+}
+
+func ExampleStrTillEx() {
+ {
+ var (
+ haystack = `xxxx.txt`
+ needle = `.txt`
+ rsStr = gstr.StrTillEx(haystack, needle)
+ )
+ fmt.Println(rsStr)
+ }
+
+ {
+ var (
+ haystack = `文件名.zip`
+ needle = `.zip`
+ rsStr = gstr.StrTillEx(haystack, needle)
+ )
+ fmt.Println(rsStr)
+ }
+
+ // Output:
+ // xxxx
+ // 文件名
+}
+
+func ExampleStripSlashes() {
+ var (
+ str = `C:\\windows\\GoFrame\\test`
+ rsStr = gstr.StripSlashes(str)
+ )
+ fmt.Println(rsStr)
+
+ // Output:
+ // C:\windows\GoFrame\test
+}
+
+func ExampleSubStr() {
+ {
+ var (
+ str = `123456789`
+ start = 0
+ length = 2
+ subStr = gstr.SubStr(str, start, length)
+ )
+ fmt.Println(subStr)
+ }
+
+ {
+ var (
+ str = `123456789`
+ start = 5
+ length = 3
+ subStr = gstr.SubStr(str, start, length)
+ )
+ fmt.Println(subStr)
+ }
+
+ // Output:
+ // 12
+ // 678
+}
+
+func ExampleSubStrRune() {
+ {
+ var (
+ str = `123456789`
+ start = 5
+ length = 4
+ subStr = gstr.SubStrRune(str, start, length)
+ )
+ fmt.Println(subStr)
+ }
+ {
+ var (
+ str = `一二三四五六七八九零`
+ start = 5
+ length = 4
+ subStr = gstr.SubStrRune(str, start, length)
+ )
+ fmt.Println(subStr)
+ }
+ // Output:
+ // 6789
+ // 六七八九
+}
+
+func ExampleToLower() {
+ var (
+ s = `GOFRAME IS VERY NICE TO USE`
+ rsStr = gstr.ToLower(s)
+ )
+ fmt.Println(rsStr)
+
+ // Output:
+ // goframe is very nice to use
+}
+
+func ExampleToUpper() {
+ var (
+ s = `goframe is very nice to use`
+ rsStr = gstr.ToUpper(s)
+ )
+ fmt.Println(rsStr)
+
+ // Output:
+ // GOFRAME IS VERY NICE TO USE
+}
+
+func ExampleTrim() {
+ var (
+ str = `.abc.def..`
+ characterMask = "."
+ rsStr = gstr.Trim(str, characterMask)
+ )
+ fmt.Println(rsStr)
+
+ // Output:
+ // abc.def
+}
+
+func ExampleTrimAll() {
+ var (
+ str = `.abc.def...`
+ characterMask = "."
+ rsStr = gstr.TrimAll(str, characterMask)
+ )
+ fmt.Println(rsStr)
+
+ // Output:
+ // abcdef
+}
+
+func ExampleTrimLeft() {
+ var (
+ str = `..abc.def.. `
+ characterMask = "."
+ rsStr = gstr.TrimLeft(str, characterMask)
+ )
+ fmt.Println(rsStr)
+
+ // Output:
+ // abc.def..
+}
+
+func ExampleTrimLeftStr() {
+ var (
+ str = `...abcd..efg...`
+ cut = "."
+ count = 2
+ rsStr = gstr.TrimLeftStr(str, cut, count)
+ )
+ fmt.Println(rsStr)
+
+ // Output:
+ // .abcd..efg...
+}
+
+func ExampleTrimRight() {
+ var (
+ str = `abcdef `
+ characterMask = "def" // []byte{"d", "e", "f"}
+ rsStr = gstr.TrimRight(str, characterMask)
+ )
+ fmt.Println(rsStr)
+
+ // Output:
+ // abc
+}
+
+func ExampleTrimRightStr() {
+ {
+ var (
+ str = `aaa,bbb,ccc,ddd,eee,`
+ cut = ","
+ count = 1
+ rsStr = gstr.TrimRightStr(str, cut, count)
+ )
+ fmt.Println(rsStr)
+ }
+
+ {
+ var (
+ str = `aaa,bbb,ccc,ddd,eee,,,,,`
+ cut = ","
+ count = -1
+ rsStr = gstr.TrimRightStr(str, cut, count)
+ )
+ fmt.Println(rsStr)
+ }
+
+ {
+ var (
+ str = `aaa,bbb,ccc,ddd,eee,,,,, `
+ cut = ","
+ count = -1
+ rsStr = gstr.TrimRightStr(str, cut, count)
+ )
+ fmt.Println(rsStr)
+ }
+
+ // Output:
+ // aaa,bbb,ccc,ddd,eee
+ // aaa,bbb,ccc,ddd,eee
+ // aaa,bbb,ccc,ddd,eee,,,,,
+}
+
+func ExampleTrimStr() {
+ {
+ var (
+ str = `goframe is Very Nice to-use`
+ cut = "goframe"
+ rsStr = gstr.TrimStr(str, cut)
+ )
+ fmt.Println(rsStr)
+ }
+ {
+ var (
+ str = `goframe is Very Nice to-use`
+ cut = "use"
+ count = -1
+ rsStr = gstr.TrimStr(str, cut, count)
+ )
+ fmt.Println(rsStr)
+ }
+
+ // Output:
+ // is Very Nice to-use
+ // goframe is Very Nice to-
+}
+
+func ExampleUcFirst() {
+ var (
+ s = `goframe is very nice to use.`
+ rsStr = gstr.UcFirst(s)
+ )
+ fmt.Println(rsStr)
+
+ // Output:
+ // Goframe is very nice to use.
+}
+
+func ExampleUcWords() {
+ var (
+ str = `goframe is very nice to use.`
+ rsStr = gstr.UcWords(str)
+ )
+ fmt.Println(rsStr)
+
+ // Output:
+ // Goframe Is Very Nice To Use.
+}
+
+func ExampleWordWrap() {
+ {
+ var (
+ str = `A very long woooooooooooooooooord. and something`
+ width = 8
+ br = "\n"
+ rsStr = gstr.WordWrap(str, width, br)
+ )
+ fmt.Println(rsStr)
+ }
+
+ {
+ var (
+ str = `The quick brown fox jumped over the lazy dog.`
+ width = 20
+ br = "
\n"
+ rsStr = gstr.WordWrap(str, width, br)
+ )
+ fmt.Printf("%v", rsStr)
+ }
+
+ // Output:
+ // A very
+ // long
+ // woooooooooooooooooord.
+ // and
+ // something
+ // The quick brown fox
+ // jumped over the lazy
+ // dog.
+}
From a184d16f061e056f3f62c6beb623dd46c5a5d092 Mon Sep 17 00:00:00 2001
From: iamyl <57165465@qq.com>
Date: Thu, 18 Nov 2021 08:58:21 +0800
Subject: [PATCH 15/17] =?UTF-8?q?=E6=9B=B4=E6=96=B0=E7=A4=BA=E4=BE=8B?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
From be2a0f4a1888e95bf714c54909f6aaf8b0545e3e Mon Sep 17 00:00:00 2001
From: iamyl <57165465@qq.com>
Date: Thu, 18 Nov 2021 08:58:48 +0800
Subject: [PATCH 16/17] Delete gstr_z_all_example_test.go
---
gstr_z_all_example_test.go | 2127 ------------------------------------
1 file changed, 2127 deletions(-)
delete mode 100644 gstr_z_all_example_test.go
diff --git a/gstr_z_all_example_test.go b/gstr_z_all_example_test.go
deleted file mode 100644
index 79fe3023d..000000000
--- a/gstr_z_all_example_test.go
+++ /dev/null
@@ -1,2127 +0,0 @@
-package gstr_test
-
-import (
- "fmt"
-
- "github.com/gogf/gf/v2/text/gstr"
-)
-
-func ExampleAddSlashes() {
- var (
- str = `'aa'"bb"cc\r\n\d\t`
- rsStr = gstr.AddSlashes(str)
- )
-
- fmt.Println(rsStr)
-
- // Output:
- // \'aa\'\"bb\"cc\\r\\n\\d\\t
-}
-
-func ExampleCaseCamel() {
- var (
- str = `goframe_is very nice.to-use`
- rsStr = gstr.CaseCamel(str)
- )
- fmt.Println(rsStr)
-
- // Output:
- // GoframeIsVeryNiceToUse
-}
-
-func ExampleCaseCamelLower() {
- var (
- str = `goframe_is very nice.to-use`
- rsStr = gstr.CaseCamelLower(str)
- )
-
- fmt.Println(rsStr)
-
- // Output:
- // goframeIsVeryNiceToUse
-}
-
-func ExampleCaseDelimited() {
- var (
- str = `goframe_is_very-nice.to-use`
- del = uint8(35)
- rsStr = gstr.CaseDelimited(str, del)
- )
- fmt.Println(rsStr)
-
- // Output:
- // goframe#is#very#nice#to#use
-}
-
-func ExampleCaseDelimitedScreaming() {
- {
- var (
- str = `goframe_is Very Nice.to-use`
- del = uint8(35)
- rsStr = gstr.CaseDelimitedScreaming(str, del, true)
- )
- fmt.Println(rsStr)
- }
-
- {
- var (
- str = `GOFRAME_IS VERY NICE.TO-USE`
- del = uint8(35)
- rsStr = gstr.CaseDelimitedScreaming(str, del, false)
- )
- fmt.Println(rsStr)
- }
-
- // Output:
- // GOFRAME#IS#VERY#NICE#TO#USE
- // goframe#is#very#nice#to#use
-}
-
-func ExampleCaseKebab() {
- var (
- str = `goframe_is Very Nice.to-use`
- rsStr = gstr.CaseKebab(str)
- )
- fmt.Println(rsStr)
-
- // Output:
- // goframe-is-very-nice-to-use
-}
-
-func ExampleCaseKebabScreaming() {
- var (
- str = `goframe_is Very Nice.to-use`
- rsStr = gstr.CaseKebabScreaming(str)
- )
- fmt.Println(rsStr)
-
- // Output:
- // GOFRAME-IS-VERY-NICE-TO-USE
-}
-
-func ExampleCaseSnake() {
- var (
- str = `goframe_is Very Nice.to-use`
- rsStr = gstr.CaseSnake(str)
- )
-
- fmt.Println(rsStr)
-
- // Output:
- // goframe_is_very_nice_to_use
-}
-
-func ExampleCaseSnakeFirstUpper() {
- var (
- str = `GoframeIsVeryNiceToUse`
- rsStr = gstr.CaseSnakeFirstUpper(str)
- )
-
- fmt.Println(rsStr)
-
- // Output:
- // goframe_is_very_nice_to_use
-}
-
-func ExampleCaseSnakeScreaming() {
- var (
- str = `goframe_is Very Nice.to-use`
- rsStr = gstr.CaseSnakeScreaming(str)
- )
-
- fmt.Println(rsStr)
-
- // Output:
- // GOFRAME_IS_VERY_NICE_TO_USE
-}
-
-func ExampleChr() {
- var (
- ascii = 65
- rsStr = gstr.Chr(ascii)
- )
- fmt.Println(rsStr)
-
- // Output:
- // A
-}
-
-func ExampleChunkSplit() {
- {
- var (
- body = `1234`
- chunkLen = 2
- end = "#"
- rsStr = gstr.ChunkSplit(body, chunkLen, end)
- )
-
- fmt.Println(rsStr)
- }
-
- {
- var (
- body = `我爱Goframe`
- chunkLen = 1
- end = "-"
- rsStr = gstr.ChunkSplit(body, chunkLen, end)
- )
- fmt.Println(rsStr)
- }
-
- {
- var (
- body = `1234`
- chunkLen = 1
- end = ""
- rsStr = gstr.ChunkSplit(body, chunkLen, end)
- )
- fmt.Println(rsStr)
- }
-
- // May Output:
- // 12#34#
- // 我-爱-G-o-f-r-a-m-e-
- // "1\r\n2\r\n3\r\n4\r\n"
-}
-
-func ExampleCompare() {
- {
- var (
- a = "C"
- b = "C"
- rsStr = gstr.Compare(a, b)
- )
-
- fmt.Println(rsStr)
- }
-
- {
- var (
- a = "A"
- b = "B"
- rsStr = gstr.Compare(a, b)
- )
- fmt.Println(rsStr)
- }
-
- {
- var (
- a = "C"
- b = "B"
- rsStr = gstr.Compare(a, b)
- )
- fmt.Println(rsStr)
- }
-
- // Output:
- // 0
- // -1
- // 1
-}
-
-func ExampleCompareVersion() {
- {
- var (
- a = "v2.11.9"
- b = "v2.10.8"
-
- rsStr = gstr.CompareVersion(a, b)
- )
-
- fmt.Println(rsStr)
- }
-
- {
- var (
- a = "A.10.8"
- b = "A.19.7"
- rsStr = gstr.CompareVersion(a, b)
- )
- fmt.Println(rsStr)
- }
-
- {
- var (
- a = "2.8.beta"
- b = "2.8"
- rsStr = gstr.CompareVersion(a, b)
- )
- fmt.Println(rsStr)
- }
-
- // Output:
- // 1
- // -1
- // 0
-}
-
-func ExampleCompareVersionGo() {
-
- {
- var (
- a = "v2.11.9"
- b = "v2.10.8"
- rsStr = gstr.CompareVersionGo(a, b)
- )
- fmt.Println(rsStr)
- }
-
- {
- var (
- a = "v0.0.2-20180626092158-b2ccc119800e"
- b = "v1.0.1-20190626092158-b2ccc519800e"
- rsStr = gstr.CompareVersionGo(a, b)
- )
- fmt.Println(rsStr)
- }
-
- {
- var (
- a = "v4.20.1"
- b = "v4.20.1+incompatible"
- rsStr = gstr.CompareVersionGo(a, b)
- )
- fmt.Println(rsStr)
- }
-
- // Output:
- // 1
- // -1
- // 0
-}
-
-func ExampleContains() {
- {
- var (
- str = `goframe_is Very Nice.to-use`
- substr = `goframe`
- rsStr = gstr.Contains(str, substr)
- )
-
- fmt.Println(rsStr)
- }
-
- {
- var (
- str = `goframe_is Very Nice.to-use`
- substr = `Goframe`
- rsStr = gstr.Contains(str, substr)
- )
- fmt.Println(rsStr)
- }
-
- // Output:
- // true
- // false
-}
-
-func ExampleContainsAny() {
- {
- var (
- s = `goframe_is Very Nice.to-use`
- chars = "g"
- rsStr = gstr.ContainsAny(s, chars)
- )
-
- fmt.Println(rsStr)
- }
-
- {
- var (
- s = `goframe_is Very Nice.to-use`
- chars = "G"
- rsStr = gstr.ContainsAny(s, chars)
- )
- fmt.Println(rsStr)
- }
-
- {
- var (
- s = `goframe_is Very Nice.to-use`
- chars = "Nice"
- rsStr = gstr.ContainsAny(s, chars)
- )
- fmt.Println(rsStr)
- }
-
- // Output:
- // true
- // false
- // true
-}
-
-func ExampleContainsI() {
- {
- var (
- str = `goframe_is Very Nice.to-use`
- substr = "go"
- rsStr = gstr.ContainsI(str, substr)
- )
-
- fmt.Println(rsStr)
- }
-
- {
- var (
- str = `goframe_is Very Nice.to-use`
- substr = "Go"
- rsStr = gstr.ContainsI(str, substr)
- )
- fmt.Println(rsStr)
- }
-
- {
- var (
- str = `goframe_is Very Nice.to-use`
- substr = "Golang"
- rsStr = gstr.ContainsI(str, substr)
- )
- fmt.Println(rsStr)
- }
-
- // Output:
- // true
- // true
- // false
-}
-
-func ExampleCount() {
- {
- var (
- str = `goframe_is Very Nice.to-use`
- substr = "goframe"
- rsStr = gstr.Count(str, substr)
- )
- fmt.Println(rsStr)
- }
-
- {
- var (
- str = `goframe_is Very Nice.to-use`
- substr = "golang"
- rsStr = gstr.Count(str, substr)
- )
- fmt.Println(rsStr)
- }
-
- // Output:
- // 1
- // 0
-}
-
-func ExampleCountChars() {
- {
- var (
- str = `goframe_is Very Nice.to-use`
- rsStr = gstr.CountChars(str)
- )
- fmt.Println(rsStr)
- }
-
- {
- var (
- str = `goframe_is Very Nice.to-use`
- rsStr = gstr.CountChars(str, true)
- )
- fmt.Println(rsStr)
- }
-
- // May Output:
- // map[ :2 -:1 .:1 N:1 V:1 _:1 a:1 c:1 e:4 f:1 g:1 i:2 m:1 o:2 r:2 s:2 t:1 u:1 y:1]
- // map[-:1 .:1 N:1 V:1 _:1 a:1 c:1 e:4 f:1 g:1 i:2 m:1 o:2 r:2 s:2 t:1 u:1 y:1]
-
-}
-
-func ExampleCountI() {
- {
- var (
- s = `goframe_is Very Nice.to-use`
- substr = "goframe"
- rsStr = gstr.CountI(s, substr)
- )
-
- fmt.Println(rsStr)
- }
-
- {
- var (
- s = `goframe_is Very Nice.to-use`
- substr = "Goframe"
- rsStr = gstr.CountI(s, substr)
- )
-
- fmt.Println(rsStr)
- }
-
- {
- var (
- s = `Goframe_is Very Nice.to-use`
- substr = "golang"
- rsStr = gstr.CountI(s, substr)
- )
- fmt.Println(rsStr)
- }
-
- // Output:
- // 1
- // 1
- // 0
-}
-
-func ExampleCountWords() {
- var (
- str = `goframe is Very Nice to use ! goframe Very Nice !`
- rsStr = gstr.CountWords(str)
- )
-
- fmt.Println(rsStr)
-
- // Output:
- // map[!:2 Nice:2 Very:2 goframe:2 is:1 to:1 use:1]
-}
-
-func ExampleEqual() {
- {
- var (
- a = `A`
- b = `a`
- rsStr = gstr.Equal(a, b)
- )
-
- fmt.Println(rsStr)
- }
-
- {
- var (
- a = `A`
- b = `A`
- rsStr = gstr.Equal(a, b)
- )
- fmt.Println(rsStr)
- }
-
- {
- var (
- a = `C`
- b = `B`
- rsStr = gstr.Equal(a, b)
- )
- fmt.Println(rsStr)
- }
-
- // Output:
- // true
- // true
- // false
-}
-
-func ExampleExplode() {
- var (
- str = `goframe_is_Very_Nice_to_use`
- delimiter = "_"
- rsStr = gstr.Explode(delimiter, str)
- )
-
- fmt.Printf(`%#v`, rsStr)
-
- // Output:
- // []string{"goframe", "is", "Very", "Nice", "to", "use"}
-}
-
-func ExampleFields() {
- var (
- str = `goframe is Very Nice to-use`
- rsStr = gstr.Fields(str)
- )
-
- fmt.Printf(`%#v`, rsStr)
-
- // Output:
- // []string{"goframe", "is", "Very", "Nice", "to-use"}
-}
-
-func ExampleHasPrefix() {
- {
- var (
- s = `goframe_is Very Nice.to-use`
- prefix = "goframe"
- rsStr = gstr.HasPrefix(s, prefix)
- )
-
- fmt.Println(rsStr)
- }
-
- {
- var (
- s = `goframe_is Very Nice.to-use`
- prefix = "Goframe"
- rsStr = gstr.HasPrefix(s, prefix)
- )
- fmt.Println(rsStr)
- }
-
- // Output:
- // true
- // false
-}
-
-func ExampleHasSuffix() {
- {
- var (
- s = `goframe_is Very Nice.to-use`
- prefix = "use"
- rsStr = gstr.HasSuffix(s, prefix)
- )
- fmt.Println(rsStr)
- }
-
- {
- var (
- s = `goframe_is Very Nice.to-use`
- prefix = "Use"
- rsStr = gstr.HasSuffix(s, prefix)
- )
- fmt.Println(rsStr)
- }
-
- // Output:
- // true
- // false
-}
-
-func ExampleHideStr() {
- {
- var (
- str = `13800138000`
- percent = 40
- hide = `*`
- rsStr = gstr.HideStr(str, percent, hide)
- )
- fmt.Println(rsStr)
- }
-
- {
- var (
- str = `AAAAAAAAAA`
- percent = 60
- hide = `@`
- rsStr = gstr.HideStr(str, percent, hide)
- )
- fmt.Println(rsStr)
- }
-
- // Output:
- // 138****8000
- // AA@@@@@@AA
-}
-
-func ExampleImplode() {
- var (
- pieces = []string{"goframe", "is", "Very", "Nice", "to", "use"}
- glue = "-"
- rsStr = gstr.Implode(glue, pieces)
- )
- fmt.Println(rsStr)
-
- // Output:
- // goframe-is-Very-Nice-to-use
-}
-
-func ExampleInArray() {
- {
- var (
- a = []string{"goframe", "is", "Very", "Nice", "to", "use"}
- s = "goframe"
- rsStr = gstr.InArray(a, s)
- )
- fmt.Println(rsStr)
- }
-
- {
- var (
- a = []string{"goframe", "is", "Very", "Nice", "to", "use"}
- s = "golang"
- rsStr = gstr.InArray(a, s)
- )
- fmt.Println(rsStr)
- }
-
- // Output:
- // true
- // false
-}
-
-func ExampleIsLetterLower() {
- {
- var (
- b byte = 65 // In ASCII is "a"
- rsStr = gstr.IsLetterLower(b)
- )
- fmt.Println(rsStr)
- }
-
- {
- var (
- b byte = 97 // In ASCII is "A"
- rsStr = gstr.IsLetterLower(b)
- )
- fmt.Println(rsStr)
- }
-
- // Output:
- // false
- // true
-}
-
-func ExampleIsLetterUpper() {
- {
- var (
- b byte = 65 // In ASCII is "a"
- rsStr = gstr.IsLetterUpper(b)
- )
- fmt.Println(rsStr)
- }
-
- {
- var (
- b byte = 97 // In ASCII is "A"
- rsStr = gstr.IsLetterUpper(b)
- )
- fmt.Println(rsStr)
- }
-
- // Output:
- // true
- // false
-}
-
-func ExampleIsNumeric() {
- {
- var (
- s = "88"
- rsStr = gstr.IsNumeric(s)
- )
- fmt.Println(rsStr)
- }
-
- {
- var (
- s = "aa66bb88"
- rsStr = gstr.IsNumeric(s)
- )
- fmt.Println(rsStr)
- }
-
- {
- var (
- s = "3.1415926"
- rsStr = gstr.IsNumeric(s)
- )
- fmt.Println(rsStr)
- }
-
- // Output:
- // true
- // false
- // true
-}
-
-func ExampleIsSubDomain() {
- {
- var (
- subDomain = `s.goframe.org`
- mainDomain = `goframe.org`
- rsStr = gstr.IsSubDomain(subDomain, mainDomain)
- )
- fmt.Println(rsStr)
- }
-
- {
- var (
- subDomain = `s.s.goframe.org`
- mainDomain = `goframe.org`
- rsStr = gstr.IsSubDomain(subDomain, mainDomain)
- )
- fmt.Println(rsStr)
- }
-
- {
- var (
- subDomain = `s.s.goframe.org`
- mainDomain = `*goframe.org`
- rsStr = gstr.IsSubDomain(subDomain, mainDomain)
- )
- fmt.Println(rsStr)
- }
-
- // Output:
- // true
- // true
- // false
-}
-
-func ExampleJoin() {
- var (
- array = []string{"goframe", "is", "Very", "Nice", "to", "use"}
- sep = `,`
- rsStr = gstr.Join(array, sep)
- )
- fmt.Println(rsStr)
-
- // Output:
- // goframe,is,Very,Nice,to,use
-}
-
-func ExampleJoinAny() {
- {
- var (
- sep = `@`
- arr1 = []string{"goframe", "is", "Very", "Nice", "to", "use"}
- rsStr = gstr.JoinAny(arr1, sep)
- )
- fmt.Println(rsStr)
- }
-
- {
- var (
- sep = `,`
- arr2 = []int{99, 73, 85, 66}
- rsStr2 = gstr.JoinAny(arr2, sep)
- )
- fmt.Println(rsStr2)
- }
-
- {
- var (
- sep = `,`
- arr3 = []interface{}{
- "Mary",
- 18,
- 99.5,
- "
",
- "Jack",
- 19,
- 66.5,
- }
- rsStr3 = gstr.JoinAny(arr3, sep)
- )
- fmt.Println(rsStr3)
- }
-
- {
- type StructA struct {
- Name string
- Age int
- }
- var (
- sep = `|`
-
- arr4 = []StructA{
- {"Mary", 18},
- {"Jack", 18},
- {"Lucy", 18},
- }
- rsStr = gstr.JoinAny(arr4, sep)
- )
- fmt.Println(rsStr)
- }
-
- // Output:
- // goframe@is@Very@Nice@to@use
- // 99,73,85,66
- // Mary,18,99.5,
,Jack,19,66.5
- // {"Name":"Mary","Age":18}|{"Name":"Jack","Age":18}|{"Name":"Lucy","Age":18}
-}
-
-func ExampleLcFirst() {
- {
- var (
- str = `Goframe`
- rsStr = gstr.LcFirst(str)
- )
- fmt.Println(rsStr)
- }
-
- {
- var (
- str = `Goframe is Very Nice to use.`
- rsStr = gstr.LcFirst(str)
- )
- fmt.Println(rsStr)
- }
-
- // Output:
- // goframe
- // goframe is Very Nice to use.
-}
-
-func ExampleLenRune() {
- {
- var (
- str = `goframe is Very Nice to use`
- rsStr = gstr.LenRune(str)
- )
- fmt.Println(rsStr)
- }
-
- {
- var (
- str = `123 4567 890`
- rsStr = gstr.LenRune(str)
- )
- fmt.Println(rsStr)
- }
-
- {
- var (
- str = `Goframe是一个非常好用的Go语言框架!`
- rsStr = gstr.LenRune(str)
- )
- fmt.Println(rsStr)
- }
-
- // Output:
- // 27
- // 12
- // 22
-}
-
-func ExampleLevenshtein() {
- {
- var (
- str1 = "Hello World"
- str2 = "ello World"
- costIns = 1
- costRep = 1
- costDel = 1
- rsStr = gstr.Levenshtein(str1, str2, costIns, costRep, costDel)
- )
-
- fmt.Println(rsStr)
- }
-
- {
- var (
- str1 = "Hello World"
- str2 = "ello Worles"
- costIns = 10
- costRep = 20
- costDel = 30
- rsStr = gstr.Levenshtein(str1, str2, costIns, costRep, costDel)
- )
- fmt.Println(rsStr)
- }
-
- // Output:
- // 1
- // 60
-}
-
-func ExampleNl2Br() {
- var (
- str = `goframe
-is
-Very
-Nice
-to
-use`
- rsStr = gstr.Nl2Br(str)
- )
-
- fmt.Println(rsStr)
-
- // Output:
- // goframe
is
Very
Nice
to
use
-}
-
-func ExampleNumberFormat() {
-
- {
- var (
- number float64 = 123456
- decimals = 2
- decPoint = "."
- thousandsSep = ","
- rsStr = gstr.NumberFormat(number, decimals, decPoint, thousandsSep)
- )
- fmt.Println(rsStr)
- }
-
- {
- var (
- number = 1234.56
- decimals = 1
- decPoint = ","
- thousandsSep = " "
- rsStr = gstr.NumberFormat(number, decimals, decPoint, thousandsSep)
- )
- fmt.Println(rsStr)
- }
-
- {
- var (
- number = 1234.5678
- decimals = 3
- decPoint = "."
- thousandsSep = ","
- rsStr = gstr.NumberFormat(number, decimals, decPoint, thousandsSep)
- )
- fmt.Println(rsStr)
- }
-
- // Output:
- // 123,456.00
- // 1 234,6
- // 1,234.568
-}
-
-func ExampleOctStr() {
- var (
- str = `\346\200\241`
- rsStr = gstr.OctStr(str)
- )
- fmt.Println(rsStr)
-
- // Output:
- // 怡
-}
-
-// '103' is the 'g' in ASCII
-func ExampleOrd() {
- var (
- str = `goframe`
- rsStr = gstr.Ord(str)
- )
-
- fmt.Println(rsStr)
-
- // Output:
- // 103
-
-}
-
-func ExampleParse() {
- {
- var (
- str = `v1=m&v2=n`
- rsStr, _ = gstr.Parse(str)
- )
- fmt.Println(rsStr)
- }
-
- {
- var (
- str = `v[a][a]=m&v[a][b]=n`
- rsStr, _ = gstr.Parse(str)
- )
- fmt.Println(rsStr)
- }
-
- {
- // The form of nested Slice is not yet supported.
- var str = `v[][]=m&v[][]=n`
- rsStr, err := gstr.Parse(str)
- if err != nil {
- panic(err)
- }
- fmt.Println(rsStr)
- }
-
- {
- // This will produce an error.
- var str = `v=m&v[a]=n`
- rsStr, err := gstr.Parse(str)
- if err != nil {
- println(err)
- }
- fmt.Println(rsStr)
- }
-
- {
- var (
- str = `a .[[b=c`
- rsStr, _ = gstr.Parse(str)
- )
- fmt.Println(rsStr)
- }
-
- // May Output:
- // map[v1:m v2:n]
- // map[v:map[a:map[a:m b:n]]]
- // map[v:map[]]
- // Error: expected type 'map[string]interface{}' for key 'v', but got 'string'
- // map[]
- // map[a___[b:c]
-}
-
-func ExamplePos() {
- {
- var (
- haystack = `goframe_is Very Nice.to-use`
- needle = `Nice`
- rsStr = gstr.Pos(haystack, needle)
- )
- fmt.Println(rsStr)
- }
-
- {
- var (
- haystack = `goframe_is Very Nice.to-use`
- needle = `Nice`
- startOffset = 16
- rsStr = gstr.Pos(haystack, needle, startOffset)
- )
- fmt.Println(rsStr)
- }
-
- {
- var (
- haystack = `goframe_is Very Nice.to-use`
- needle = `Nice`
- startOffset = 17
- rsStr = gstr.Pos(haystack, needle, startOffset)
- )
- fmt.Println(rsStr)
- }
-
- {
- var (
- haystack = `goframe_is Very Nice.to-use`
- needle = `nice`
- rsStr = gstr.Pos(haystack, needle)
- )
- fmt.Println(rsStr)
- }
-
- // Output:
- // 16
- // 16
- // -1
- // -1
-}
-
-func ExamplePosI() {
- {
- var (
- haystack = `goframe_is Very Nice.to-use`
- needle = `Nice`
- rsStr = gstr.PosI(haystack, needle)
- )
-
- fmt.Println(rsStr)
- }
-
- {
- var (
- haystack = `goframe_is Very Nice.to-use`
- needle = `Nice`
- startOffset = 16
- rsStr = gstr.PosI(haystack, needle, startOffset)
- )
- fmt.Println(rsStr)
- }
-
- {
- var (
- haystack = `goframe_is Very Nice.to-use`
- needle = `Nice`
- startOffset = 17
- rsStr = gstr.PosI(haystack, needle, startOffset)
- )
- fmt.Println(rsStr)
- }
-
- {
- var (
- haystack = `goframe_is Very Nice.to-use`
- needle = `nice`
- rsStr = gstr.PosI(haystack, needle)
- )
- fmt.Println(rsStr)
- }
-
- // Output:
- // 16
- // 16
- // -1
- // 16
-}
-
-func ExamplePosIRune() {
- {
- var (
- haystack = `goframe_is Very Nice.to-use`
- needle = `Nice`
- rsStr = gstr.PosIRune(haystack, needle)
- )
-
- fmt.Println(rsStr)
- }
-
- {
- var (
- haystack = `Goframe是个非常好用的框架.`
- needle = `Nice`
- startOffset = 16
- rsStr = gstr.PosIRune(haystack, needle, startOffset)
- )
- fmt.Println(rsStr)
- }
-
- {
- var (
- haystack = `Goframe是个非常好用的框架.`
- needle = `Nice`
- startOffset = 17
- rsStr = gstr.PosIRune(haystack, needle, startOffset)
- )
- fmt.Println(rsStr)
- }
-
- {
- var (
- haystack = `Goframe是个非常好用的框架.`
- needle = `nice`
- rsStr = gstr.PosIRune(haystack, needle)
- )
- fmt.Println(rsStr)
- }
-
- // Output:
- // 16
- // -1
- // -1
- // -1
-}
-
-func ExamplePosR() {
- {
- var (
- haystack = `goframe_is Very Nice.to-use`
- needle = `Nice`
- rsStr = gstr.PosR(haystack, needle)
- )
- fmt.Println(rsStr)
- }
-
- {
- var (
- haystack = `goframe_is Very Nice.to-use`
- needle = `Nice`
- startOffset = 16
- rsStr = gstr.PosR(haystack, needle, startOffset)
- )
- fmt.Println(rsStr)
- }
-
- {
- var (
- haystack = `goframe_is Very Nice.to-use`
- needle = `Nice`
- startOffset = 17
- rsStr = gstr.PosR(haystack, needle, startOffset)
- )
- fmt.Println(rsStr)
- }
-
- {
- var (
- haystack = `goframe_is Very Nice.to-use`
- needle = `nice`
- rsStr = gstr.PosR(haystack, needle)
- )
- fmt.Println(rsStr)
- }
-
- // Output:
- // 16
- // 16
- // -1
- // -1
-}
-
-func ExamplePosRI() {
- {
- var (
- haystack = `goframe_is Very Nice.to-use`
- needle = `Nice`
- rsStr = gstr.PosRI(haystack, needle)
- )
- fmt.Println(rsStr)
- }
-
- {
- var (
- haystack = `goframe_is Very Nice.to-use`
- needle = `Nice`
- startOffset = 16
- rsStr = gstr.PosRI(haystack, needle, startOffset)
- )
- fmt.Println(rsStr)
- }
-
- {
- var (
- haystack = `goframe_is Very Nice.to-use`
- needle = `Nice`
- startOffset = 17
- rsStr = gstr.PosRI(haystack, needle, startOffset)
- )
- fmt.Println(rsStr)
- }
-
- {
- var (
- haystack = `goframe_is Very Nice.to-use`
- needle = `nice`
- rsStr = gstr.PosRI(haystack, needle)
- )
- fmt.Println(rsStr)
- }
-
- // Output:
- // 16
- // 16
- // -1
- // 16
-
-}
-
-func ExamplePosRIRune() {
- {
- var (
- haystack = `Goframe是个非常好用的框架`
- needle = `好用`
- rsStr = gstr.PosRIRune(haystack, needle)
- )
-
- fmt.Println(rsStr)
- }
-
- {
- var (
- haystack = `Goframe是个非常好用的框架`
- needle = `框架`
- startOffset = 16
- rsStr = gstr.PosRIRune(haystack, needle, startOffset)
- )
- fmt.Println(rsStr)
- }
-
- {
- var (
- haystack = `Goframe是个非常好用的框架`
- needle = `golang`
- startOffset = 17
- rsStr = gstr.PosRIRune(haystack, needle, startOffset)
- )
- fmt.Println(rsStr)
- }
-
- {
- var (
- haystack = `Goframe是个非常好用的框架`
- needle = `goframe`
- rsStr = gstr.PosRIRune(haystack, needle)
- )
- fmt.Println(rsStr)
- }
-
- // Output:
- // 11
- // 14
- // -1
- // 0
-}
-
-func ExamplePosRRune() {
- {
- var (
- haystack = `goframe_is Very Nice.to-use`
- needle = `Nice`
- rsStr = gstr.PosRRune(haystack, needle)
- )
- fmt.Println(rsStr)
- }
-
- {
- var (
- haystack = `goframe_is Very Nice.to-use`
- needle = `Nice`
- startOffset = 16
- rsStr = gstr.PosRRune(haystack, needle, startOffset)
- )
- fmt.Println(rsStr)
- }
-
- {
- var (
- haystack = `Goframe是中国开发者的福利.`
- needle = `Nice`
- startOffset = 17
- rsStr = gstr.PosRRune(haystack, needle, startOffset)
- )
- fmt.Println(rsStr)
- }
-
- {
- var (
- haystack = `Goframe是中国开发者的福利.`
- needle = `开发者`
- rsStr = gstr.PosRRune(haystack, needle)
- )
- fmt.Println(rsStr)
- }
-
- // Output:
- // 16
- // 16
- // -1
- // 10
-}
-
-func ExamplePosRune() {
- {
- var (
- haystack = `goframe_is Very Nice.to-use`
- needle = `Nice`
- rsStr = gstr.PosRune(haystack, needle)
- )
- fmt.Println(rsStr)
- }
-
- {
- var (
- haystack = `我喜欢Goframe框架`
- needle = `框架`
- startOffset = 16
- rsStr = gstr.PosRune(haystack, needle, startOffset)
- )
- fmt.Println(rsStr)
- }
-
- {
- var (
- haystack = `我喜欢Goframe框架`
- needle = `框架`
- startOffset = 17
- rsStr = gstr.PosRune(haystack, needle, startOffset)
- )
- fmt.Println(rsStr)
- }
-
- {
- var (
- haystack = `我喜欢Goframe框架`
- needle = `goframe`
- rsStr = gstr.PosRune(haystack, needle)
- )
- fmt.Println(rsStr)
- }
-
- // Output:
- // 16
- // 10
- // -1
- // -1
-}
-
-func ExampleQuoteMeta() {
- {
- var (
- str = `.\+?[^]()`
- rsStr = gstr.QuoteMeta(str)
- )
- fmt.Println(rsStr)
- }
-
- {
- var (
- str = `https://goframe.org/pages/viewpage.action?pageId=1114327`
- rsStr = gstr.QuoteMeta(str)
- )
- fmt.Println(rsStr)
- }
-
- // Output:
- // \.\\\+\?\[\^\]\(\)
- // https://goframe\.org/pages/viewpage\.action\?pageId=1114327
-
-}
-
-func ExampleRepeat() {
- var (
- input = `goframe `
- multiplier = 3
- rsStr = gstr.Repeat(input, multiplier)
- )
- fmt.Println(rsStr)
-
- // Output:
- // goframe goframe goframe
-}
-
-func ExampleReplace() {
- {
- var (
- origin = `goframe_is_Very_Nice_to_use!`
- search = `_`
- replace = `+`
- rsStr = gstr.Replace(origin, search, replace)
- )
- fmt.Println(rsStr)
- }
-
- {
- var (
- origin = `goframe_is_Very_Nice_to_use!`
- search = `_`
- replace = `+`
- count = 2
- rsStr = gstr.Replace(origin, search, replace, count)
- )
- fmt.Println(rsStr)
- }
-
- // Output:
- // goframe+is+Very+Nice+to+use!
- // goframe+is+Very_Nice_to_use!
-}
-
-func ExampleReplaceByArray() {
- {
- var (
- origin = `Golang is Very Good`
- array = []string{"o", "O"}
- rsStr = gstr.ReplaceByArray(origin, array)
- )
- fmt.Println(rsStr)
- }
-
- {
- var (
- origin = `Golang is Very Good`
- array = []string{"Golang", "Goframe", "Good", "Nice"}
- rsStr = gstr.ReplaceByArray(origin, array)
- )
- fmt.Println(rsStr)
- }
-
- // Output:
- // GOlang is Very GOOd
- // Goframe is Very Nice
-}
-
-func ExampleReplaceByMap() {
- {
- var (
- origin = `Golang is Very Good`
- replaces = map[string]string{
- "Golang": "Goframe",
- "Good": "Nice",
- }
- rsStr = gstr.ReplaceByMap(origin, replaces)
- )
- fmt.Println(rsStr)
- }
-
- {
- var (
- origin = `Golang is Very Good`
- replaces = map[string]string{
- "golang": "Goframe",
- "good": "Nice",
- }
- rsStr = gstr.ReplaceByMap(origin, replaces)
- )
- fmt.Println(rsStr)
- }
-
- // Output:
- // Goframe is Very Nice
- // Golang is Very Good
-}
-
-func ExampleReplaceI() {
- var (
- origin = `goframe is Very Nice to use`
- search = `Goframe`
- replace = `golang`
- count = 3
- rsStr = gstr.ReplaceI(origin, search, replace, count)
- )
- fmt.Println(rsStr)
-
- // Output:
- // golang is Very Nice to use
-}
-
-func ExampleReplaceIByArray() {
- var (
- origin = `golang is very nice`
- array = []string{"Golang", "GoFrame", "Nice", "GOOD"}
- rsStr = gstr.ReplaceIByArray(origin, array)
- )
-
- fmt.Println(rsStr)
-
- // Output:
- // GoFrame is very GOOD
-}
-
-func ExampleReplaceIByMap() {
- {
- var (
- origin = `Golang is Very Good`
- replaces = map[string]string{
- "Golang": "Goframe",
- "Good": "Nice",
- }
- rsStr = gstr.ReplaceIByMap(origin, replaces)
- )
- fmt.Println(rsStr)
- }
-
- {
- var (
- origin = `Golang is Very Good`
- replaces = map[string]string{
- "golang": "Goframe",
- "good": "Nice",
- }
- rsStr = gstr.ReplaceIByMap(origin, replaces)
- )
- fmt.Println(rsStr)
- }
-
- // Output:
- // Goframe is Very Nice
- // Goframe is Very Nice
-}
-
-func ExampleReverse() {
- var (
- str = `123456`
- rsStr = gstr.Reverse(str)
- )
- fmt.Println(rsStr)
-
- // Output:
- // 654321
-}
-
-func ExampleSearchArray() {
- {
- var (
- a = []string{"goframe", "is", "Very", "Nice"}
- s = `goframe`
- rsStr = gstr.SearchArray(a, s)
- )
- fmt.Println(rsStr)
- }
-
- {
- var (
- a = []string{"goframe", "is", "Very", "Nice"}
- s = `Very`
- rsStr = gstr.SearchArray(a, s)
- )
- fmt.Println(rsStr)
- }
-
- {
- var (
- a = []string{"goframe", "is", "Very", "Nice"}
- s = `use`
- rsStr = gstr.SearchArray(a, s)
- )
- fmt.Println(rsStr)
- }
-
- // Output:
- // 0
- // 2
- // -1
-}
-
-func ExampleShuffle() {
- var (
- str = `abcdefg`
- rsStr = gstr.Shuffle(str)
- )
- fmt.Println(rsStr)
-
- // May Output:
- // efcgbda
-}
-
-func ExampleSimilarText() {
- {
- var (
- percent *float64
- first = `goframe_is`
- second = `go-nice`
- rsStr = gstr.SimilarText(first, second, percent)
- )
- fmt.Println(rsStr)
- }
-
- {
- var (
- first = `AaBbCcDd`
- second = `ad`
- )
- p := 0.80
- rsStr := gstr.SimilarText(first, second, &p)
- fmt.Println(rsStr)
- }
-
- // Output:
- // 3
- // 2
-}
-
-func ExampleSoundex() {
- {
- var (
- str = `Euler`
- str2 = `Ellery`
- rsStr = gstr.Soundex(str)
- rsStr2 = gstr.Soundex(str2)
- )
- fmt.Println(rsStr, rsStr2)
- }
-
- {
- var (
- str = `Gauss`
- str2 = `Ghosh`
- rsStr = gstr.Soundex(str)
- rsStr2 = gstr.Soundex(str2)
- )
- fmt.Println(rsStr, rsStr2)
- }
-
- {
- var (
- str = `Lloyd`
- str2 = `Ladd`
- rsStr = gstr.Soundex(str)
- rsStr2 = gstr.Soundex(str2)
- )
- fmt.Println(rsStr, rsStr2)
- }
-
- // Output:
- // E406 E406
- // G020 G020
- // L030 L030
-}
-
-func ExampleSplit() {
- var (
- str = `GoFrame_Nice`
- delimiter = `_`
- rsStr = gstr.Split(str, delimiter)
- )
- fmt.Printf(`%#v`, rsStr)
-
- // Output:
- // []string{"GoFrame", "Nice"}
-}
-
-func ExampleSplitAndTrim() {
- var (
- str = ` goframe, is, Very ,Nice ,to, use`
- delimiter = `,`
- characterMask = ` `
- rsStr = gstr.SplitAndTrim(str, delimiter, characterMask)
- )
- fmt.Printf("%#v", rsStr)
-
- // Output:
- // []string{"goframe", "is", "Very", "Nice", "to", "use"}
-}
-
-func ExampleStr() {
- var (
- haystack = `xxx.jpg`
- needle = `.`
- rsStr = gstr.Str(haystack, needle)
- )
- fmt.Println(rsStr)
-
- // Output:
- // .jpg
-}
-
-func ExampleStrEx() {
- var (
- haystack = `https://goframe.org/index.html?a=1&b=2`
- needle = `?`
- rsStr = gstr.StrEx(haystack, needle)
- )
- fmt.Println(rsStr)
-
- // Output:
- // a=1&b=2
-}
-
-func ExampleStrLimit() {
- {
- var (
- str = `1234567890.png`
- length = 4
- suffix = `.jpg`
- rsStr = gstr.StrLimit(str, length, suffix)
- )
- fmt.Println(rsStr)
- }
-
- {
- var (
- str = `123456789`
- length = 3
- suffix = `...`
- rsStr = gstr.StrLimit(str, length, suffix)
- )
- fmt.Println(rsStr)
- }
-
- // Output:
- // 1234.jpg
- // 123...
-}
-
-func ExampleStrLimitRune() {
- {
- var (
- str = `123456789`
- length = 5
- suffix = "ABCD"
- rsStr = gstr.StrLimitRune(str, length, suffix)
- )
- fmt.Println(rsStr)
- }
-
- {
- var (
- str = `goframe是一个好用的框架她提供了非常丰富的工具给使用者.`
- length = 15
- suffix = "!"
- rsStr = gstr.StrLimitRune(str, length, suffix)
- )
- fmt.Println(rsStr)
- }
-
- // Output:
- // 12345ABCD
- // goframe是一个好用的框架!
-}
-
-func ExampleStrTill() {
- {
- var (
- haystack = `goframe是一个好用的框架,她提供了非常丰富的工具给使用者.`
- needle = `,`
- rsStr = gstr.StrTill(haystack, needle)
- )
- fmt.Println(rsStr)
- }
-
- {
- var (
- haystack = `https://goframe.org/index.html?test=123456`
- needle = `?`
- rsStr = gstr.StrTill(haystack, needle)
- )
- fmt.Println(rsStr)
- }
-
- // Output:
- // goframe是一个好用的框架,
- // https://goframe.org/index.html?
-}
-
-func ExampleStrTillEx() {
- {
- var (
- haystack = `xxxx.txt`
- needle = `.txt`
- rsStr = gstr.StrTillEx(haystack, needle)
- )
- fmt.Println(rsStr)
- }
-
- {
- var (
- haystack = `文件名.zip`
- needle = `.zip`
- rsStr = gstr.StrTillEx(haystack, needle)
- )
- fmt.Println(rsStr)
- }
-
- // Output:
- // xxxx
- // 文件名
-}
-
-func ExampleStripSlashes() {
- var (
- str = `C:\\windows\\GoFrame\\test`
- rsStr = gstr.StripSlashes(str)
- )
- fmt.Println(rsStr)
-
- // Output:
- // C:\windows\GoFrame\test
-}
-
-func ExampleSubStr() {
- {
- var (
- str = `123456789`
- start = 0
- length = 2
- subStr = gstr.SubStr(str, start, length)
- )
- fmt.Println(subStr)
- }
-
- {
- var (
- str = `123456789`
- start = 5
- length = 3
- subStr = gstr.SubStr(str, start, length)
- )
- fmt.Println(subStr)
- }
-
- // Output:
- // 12
- // 678
-}
-
-func ExampleSubStrRune() {
- {
- var (
- str = `123456789`
- start = 5
- length = 4
- subStr = gstr.SubStrRune(str, start, length)
- )
- fmt.Println(subStr)
- }
- {
- var (
- str = `一二三四五六七八九零`
- start = 5
- length = 4
- subStr = gstr.SubStrRune(str, start, length)
- )
- fmt.Println(subStr)
- }
- // Output:
- // 6789
- // 六七八九
-}
-
-func ExampleToLower() {
- var (
- s = `GOFRAME IS VERY NICE TO USE`
- rsStr = gstr.ToLower(s)
- )
- fmt.Println(rsStr)
-
- // Output:
- // goframe is very nice to use
-}
-
-func ExampleToUpper() {
- var (
- s = `goframe is very nice to use`
- rsStr = gstr.ToUpper(s)
- )
- fmt.Println(rsStr)
-
- // Output:
- // GOFRAME IS VERY NICE TO USE
-}
-
-func ExampleTrim() {
- var (
- str = `.abc.def..`
- characterMask = "."
- rsStr = gstr.Trim(str, characterMask)
- )
- fmt.Println(rsStr)
-
- // Output:
- // abc.def
-}
-
-func ExampleTrimAll() {
- var (
- str = `.abc.def...`
- characterMask = "."
- rsStr = gstr.TrimAll(str, characterMask)
- )
- fmt.Println(rsStr)
-
- // Output:
- // abcdef
-}
-
-func ExampleTrimLeft() {
- var (
- str = `..abc.def.. `
- characterMask = "."
- rsStr = gstr.TrimLeft(str, characterMask)
- )
- fmt.Println(rsStr)
-
- // Output:
- // abc.def..
-}
-
-func ExampleTrimLeftStr() {
- var (
- str = `...abcd..efg...`
- cut = "."
- count = 2
- rsStr = gstr.TrimLeftStr(str, cut, count)
- )
- fmt.Println(rsStr)
-
- // Output:
- // .abcd..efg...
-}
-
-func ExampleTrimRight() {
- var (
- str = `abcdef `
- characterMask = "def" // []byte{"d", "e", "f"}
- rsStr = gstr.TrimRight(str, characterMask)
- )
- fmt.Println(rsStr)
-
- // Output:
- // abc
-}
-
-func ExampleTrimRightStr() {
- {
- var (
- str = `aaa,bbb,ccc,ddd,eee,`
- cut = ","
- count = 1
- rsStr = gstr.TrimRightStr(str, cut, count)
- )
- fmt.Println(rsStr)
- }
-
- {
- var (
- str = `aaa,bbb,ccc,ddd,eee,,,,,`
- cut = ","
- count = -1
- rsStr = gstr.TrimRightStr(str, cut, count)
- )
- fmt.Println(rsStr)
- }
-
- {
- var (
- str = `aaa,bbb,ccc,ddd,eee,,,,, `
- cut = ","
- count = -1
- rsStr = gstr.TrimRightStr(str, cut, count)
- )
- fmt.Println(rsStr)
- }
-
- // Output:
- // aaa,bbb,ccc,ddd,eee
- // aaa,bbb,ccc,ddd,eee
- // aaa,bbb,ccc,ddd,eee,,,,,
-}
-
-func ExampleTrimStr() {
- {
- var (
- str = `goframe is Very Nice to-use`
- cut = "goframe"
- rsStr = gstr.TrimStr(str, cut)
- )
- fmt.Println(rsStr)
- }
- {
- var (
- str = `goframe is Very Nice to-use`
- cut = "use"
- count = -1
- rsStr = gstr.TrimStr(str, cut, count)
- )
- fmt.Println(rsStr)
- }
-
- // Output:
- // is Very Nice to-use
- // goframe is Very Nice to-
-}
-
-func ExampleUcFirst() {
- var (
- s = `goframe is very nice to use.`
- rsStr = gstr.UcFirst(s)
- )
- fmt.Println(rsStr)
-
- // Output:
- // Goframe is very nice to use.
-}
-
-func ExampleUcWords() {
- var (
- str = `goframe is very nice to use.`
- rsStr = gstr.UcWords(str)
- )
- fmt.Println(rsStr)
-
- // Output:
- // Goframe Is Very Nice To Use.
-}
-
-func ExampleWordWrap() {
- {
- var (
- str = `A very long woooooooooooooooooord. and something`
- width = 8
- br = "\n"
- rsStr = gstr.WordWrap(str, width, br)
- )
- fmt.Println(rsStr)
- }
-
- {
- var (
- str = `The quick brown fox jumped over the lazy dog.`
- width = 20
- br = "
\n"
- rsStr = gstr.WordWrap(str, width, br)
- )
- fmt.Printf("%v", rsStr)
- }
-
- // Output:
- // A very
- // long
- // woooooooooooooooooord.
- // and
- // something
- // The quick brown fox
- // jumped over the lazy
- // dog.
-}
From e586e4d1092c7558f1d64095f31580515c9fd2ec Mon Sep 17 00:00:00 2001
From: iamyl <57165465@qq.com>
Date: Thu, 18 Nov 2021 08:59:51 +0800
Subject: [PATCH 17/17] =?UTF-8?q?=E6=9B=B4=E6=96=B0=E7=A4=BA=E4=BE=8B?=
=?UTF-8?q?=E6=96=87=E4=BB=B6?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit