Files
AynaLivePlayer/util/string.go
2022-07-07 20:30:12 -07:00

54 lines
875 B
Go

package util
import (
"fmt"
"strconv"
)
func SliceString(str string, from int, to int) (string, bool) {
sList := []rune(str)
if to <= 0 {
to = len(sList) + to
}
if from >= len(sList) || to > len(sList) {
return "", false
}
return string(sList[from:to]), true
}
func LenString(str string) int {
return len([]rune(str))
}
func StringNormalize(str string, min int, max int) string {
fmtStr := fmt.Sprintf("%%-%d.%ds", min, max)
return fmt.Sprintf(fmtStr, str)
}
func StringSliceContains(s []string, e string) bool {
for _, a := range s {
if a == e {
return true
}
}
return false
}
func StringToInt(s string) int {
i, _ := strconv.Atoi(s)
return i
}
func StringSliceCopy(src []string) []string {
x := make([]string, len(src))
copy(x, src)
return x
}
func GetOrDefault(s string, def string) string {
if s == "" {
return def
}
return s
}