代码拉取完成,页面将自动刷新
package stringutil
import (
"unicode/utf8"
"github.com/asaskevich/govalidator"
)
// Creates an slice of slice values not included in the other given slice.
func Diff(base, exclude []string) (result []string) {
excludeMap := make(map[string]bool)
for _, s := range exclude {
excludeMap[s] = true
}
for _, s := range base {
if !excludeMap[s] {
result = append(result, s)
}
}
return result
}
func Unique(ss []string) (result []string) {
smap := make(map[string]bool)
for _, s := range ss {
smap[s] = true
}
for s := range smap {
result = append(result, s)
}
return result
}
func CamelCaseToUnderscore(str string) string {
return govalidator.CamelCaseToUnderscore(str)
}
func UnderscoreToCamelCase(str string) string {
return govalidator.UnderscoreToCamelCase(str)
}
func FindString(array []string, str string) int {
for index, s := range array {
if str == s {
return index
}
}
return -1
}
func StringIn(str string, array []string) bool {
return FindString(array, str) > -1
}
func Reverse(s string) string {
size := len(s)
buf := make([]byte, size)
for start := 0; start < size; {
r, n := utf8.DecodeRuneInString(s[start:])
start += n
utf8.EncodeRune(buf[size-start:], r)
}
return string(buf)
}
此处可能存在不合适展示的内容,页面不予展示。您可通过相关编辑功能自查并修改。
如您确认内容无涉及 不当用语 / 纯广告导流 / 暴力 / 低俗色情 / 侵权 / 盗版 / 虚假 / 无价值内容或违法国家有关法律法规的内容,可点击提交进行申诉,我们将尽快为您处理。