Compare commits

..

3 Commits

Author Message Date
bryanqiu
6e98ac9100 add FixToNo0x 2023-01-30 09:33:07 +08:00
bryanqiu
e21dbcc61b add GetEnvDefault 2022-12-29 20:35:33 +08:00
bryanqiu
906d43322e v1.0.3 2022-12-05 10:06:56 +08:00

30
str.go
View File

@ -6,6 +6,7 @@ import (
"encoding/json" "encoding/json"
"fmt" "fmt"
"math/rand" "math/rand"
"os"
"strings" "strings"
"time" "time"
) )
@ -16,7 +17,10 @@ const (
) )
// get random number string with length. // get random number string with length.
func GetRandomString(l int) string { var GetRandomString = GetRandomNumString
// get random number string with length.
func GetRandomNumString(l int) string {
str := NUMBERSTRING str := NUMBERSTRING
bytes := []byte(str) bytes := []byte(str)
result := []byte{} result := []byte{}
@ -39,7 +43,7 @@ func GetRandomCharString(l int) string {
return string(result) return string(result)
} }
//skip // skip
func Skip(s string, sep string, n int) string { func Skip(s string, sep string, n int) string {
seplen := len(sep) seplen := len(sep)
if seplen == 0 || n < 0 { if seplen == 0 || n < 0 {
@ -101,8 +105,9 @@ func JsonstrToStrMap(jsonstr string) (m map[string]string) {
} }
// string to string map to string // string to string map to string
// example: "K1:V1;K2:V2" //
// => {K1:V1, K2:V2} // example: "K1:V1;K2:V2"
// => {K1:V1, K2:V2}
func StringToStrMap(str string, sep1, sep2 string) (m map[string]string) { func StringToStrMap(str string, sep1, sep2 string) (m map[string]string) {
m = map[string]string{} m = map[string]string{}
for _, kvstr := range strings.Split(str, sep1) { for _, kvstr := range strings.Split(str, sep1) {
@ -112,3 +117,20 @@ func StringToStrMap(str string, sep1, sep2 string) (m map[string]string) {
} }
return m return m
} }
// get os env with default
func GetEnvDefault(key, defval string) string {
if val, ok := os.LookupEnv(key); ok {
return val
} else {
return defval
}
}
// fix hex string to no 0x prefix
func FixToNo0x(hexstr string) string {
if strings.HasPrefix(hexstr, "0x") {
return hexstr[2:]
}
return hexstr
}