https://github.com/jefferyjob/go-easy-utils/
这是一个基于 Go 语言开发的通用数据类型处理工具类,帮助开发者在业务代码实现中处理常见的数据类型和数据操作。可以让您专注于您的业务代码的实现,而免去处理基本数据类型转换和验证的功能。该工具库无侵入式的设计可以让您的业务代码更容易阅读和优雅。
安装
go get -u github.com/jefferyjob/go-easy-utils
使用Demo
package mainimport ("fmt""github.com/jefferyjob/go-easy-utils/sliceUtil")func main() {var slice = []string{"this", "is", "go", "easy", "utils"}chunkSlice := sliceUtil.ChunkStr(slice, 2)fmt.Printf("%v", chunkSlice)}
// JsonToStruct 将 JSON 字符串解析为指定的结构体指针func JsonToStruct(jsonData string, result interface{}) error
// IsTime 验证是否为时间格式(HH:mm:ss)func IsTime(str string) bool// IsDate 验证是否为日期格式(yyyy-MM-dd)func IsDate(str string) bool// IsDateTime 验证是否为日期时间格式(yyyy-MM-dd HH:mm:ss)func IsDateTime(str string) bool// IsIDCard 验证idcard号(18或15位)func IsIDCard(str string) bool// IsIDCard18 验证18位idcardfunc IsIDCard18(id string) bool// IsIDCard15 验证15位idcardfunc IsIDCard15(idCard string) bool// IsMobile 验证是否为手机号码func IsMobile(mobileNum string) bool// IsTelephone 验证是否为座机号码func IsTelephone(telephone string) bool// IsPostalCode 验证是否为邮编号码func IsPostalCode(str string) bool// IsDecimal 验证给定的字符串小数点后是否最多两位func IsDecimal(input string) bool// IsNumber 验证是否全部为数字func IsNumber(input string) bool// IsBankCardNo 验证是否为bank号func IsBankCardNo(str string) bool// IsAllChinese 验证给定的字符串全部为中文func IsAllChinese(input string) bool// IsContainChinese 验证给定的字符串包含中文func IsContainChinese(input string) bool// IsEmail 是否为emailfunc IsEmail(input string) bool// IsIPv4 是否为ipv4地址func IsIPv4(input string) bool// IsIPv6 是否为ipv6地址func IsIPv6(input string) bool// IsURL 是否为URL地址func IsURL(input string) bool// IsJSON 是否为Jsonfunc IsJSON(input string) bool// IsChineseName 验证是否为中文名func IsChineseName(name string) bool// IsEnglishName 验证是否为英文名func IsEnglishName(name string) bool// IsQQ 验证是否为QQ号func IsQQ(qq string) bool// IsWeChat 验证是否为微信号func IsWeChat(wechat string) bool// IsWeibo 验证是否为微博IDfunc IsWeibo(weibo string) bool// IsPassword 验证密码是否合法// 密码长度在6-20个字符之间,只包含数字、字母和下划线func IsPassword(password string) bool
// StrToInt string转intfunc StrToInt(str string) int// StrToInt8 string转int8func StrToInt8(str string) int8// StrToInt16 string转int16func StrToInt16(str string) int16// StrToInt32 string转int32func StrToInt32(str string) int32// StrToInt64 string转int64func StrToInt64(str string) int64// StrToUint string转uintfunc StrToUint(str string) uint// StrToUint8 string转uint8func StrToUint8(str string) uint8// StrToUint16 string转uint16func StrToUint16(str string) uint16// StrToUint32 string转uint32func StrToUint32(str string) uint32// StrToUint64 string转uint64func StrToUint64(str string) uint64// StrToBytes 字符串转字节数组func StrToBytes(data string) []byte
// Chunk 将一个切片按指定大小分成多个切片,并返回一个包含这些切片的二维切片。func Chunk(slice []interface{}, size int) [][]interface{}// ChunkStr 将一个 string 类型的切片切割成指定大小的多个子切片func ChunkStr(slice []string, size int) [][]string// ChunkInt 将一个 int 类型的切片切割成指定大小的多个子切片func ChunkInt(slice []int, size int) [][]int// ChunkInt8 将一个 int8 类型的切片切割成指定大小的多个子切片func ChunkInt8(slice []int8, size int) [][]int8// ChunkInt32 将一个 int32 类型的切片切割成指定大小的多个子切片func ChunkInt32(slice []int32, size int) [][]int32// ChunkInt64 将一个 int64 类型的切片切割成指定大小的多个子切片func ChunkInt64(slice []int64, size int) [][]int64// ChunkUint 将一个 uint 类型的切片切割成指定大小的多个子切片func ChunkUint(slice []uint, size int) [][]uint// ChunkUint8 将一个 uint8 类型的切片切割成指定大小的多个子切片func ChunkUint8(slice []uint8, size int) [][]uint8// ChunkUint16 将一个 uint16 类型的切片切割成指定大小的多个子切片func ChunkUint16(slice []uint16, size int) [][]uint16// ChunkUint32 将一个 uint32 类型的切片切分成固定大小的子切片func ChunkUint32(slice []uint32, size int) [][]uint32// ChunkUint64 将一个 uint64 类型的切片切分成固定大小的子切片func ChunkUint64(slice []uint64, size int) [][]uint64// InSlices 判断指定值value是否在指定的slice中存在func InSlices(value interface{}, slices []interface{}) bool// InStrSlices 判断指定值value是否在指定的slice中存在func InStrSlices(value string, slices []string) bool// InIntSlices 判断指定值value是否在指定的slice中存在func InIntSlices(value int, slices []int) bool// InInt8Slices 判断指定值value是否在指定的slice中存在func InInt8Slices(value int8, slices []int8) bool// InInt16Slices 判断指定值value是否在指定的slice中存在func InInt16Slices(value int16, slices []int16) bool// InInt32Slices 判断指定值value是否在指定的slice中存在func InInt32Slices(value int32, slices []int32) bool// InInt64Slices 判断指定值value是否在指定的slice中存在func InInt64Slices(value int64, slices []int64) bool// InUintSlices 判断指定值value是否在指定的slice中存在func InUintSlices(value uint, slices []uint) bool// InUint8Slices 判断指定值value是否在指定的slice中存在func InUint8Slices(value uint8, slices []uint8) bool// InUint16Slices 判断指定值value是否在指定的slice中存在func InUint16Slices(value uint16, slices []uint16) bool// InUint32Slices 判断指定值value是否在指定的slice中存在func InUint32Slices(value uint32, slices []uint32) bool// InUint64Slices 判断指定值value是否在指定的slice中存在func InUint64Slices(value uint64, slices []uint64) bool// MergeSlices 将多个slice合并成一个slicefunc MergeSlices(slices ...[]interface{}) []interface{}// MergeStrSlices 将多个slice合并成一个slicefunc MergeStrSlices(slices ...[]string) []string// MergeIntSlices 将多个slice合并成一个slicefunc MergeIntSlices(slices ...[]int) []int// MergeInt8Slices 将多个slice合并成一个slicefunc MergeInt8Slices(slices ...[]int8) []int8// MergeInt16Slices 将多个slice合并成一个slicefunc MergeInt16Slices(slices ...[]int16) []int16// MergeInt32Slices 将多个slice合并成一个slicefunc MergeInt32Slices(slices ...[]int32) []int32// MergeInt64Slices 将多个slice合并成一个slicefunc MergeInt64Slices(slices ...[]int64) []int64// MergeUintSlices 将多个slice合并成一个slicefunc MergeUintSlices(slices ...[]uint) []uint// MergeUint8Slices 将多个slice合并成一个slicefunc MergeUint8Slices(slices ...[]uint8) []uint8// MergeUint16Slices 将多个slice合并成一个slicefunc MergeUint16Slices(slices ...[]uint16) []uint16// MergeUint32Slices 将多个slice合并成一个slicefunc MergeUint32Slices(slices ...[]uint32) []uint32// MergeUint64Slices 将多个slice合并成一个slicefunc MergeUint64Slices(slices ...[]uint64) []uint64// SumIntSlice 对slice中的元素求和func SumIntSlice(slice []int) int// SumInt8Slice 对slice中的元素求和func SumInt8Slice(slice []int8) int8// SumInt16Slice 对slice中的元素求和func SumInt16Slice(slice []int16) int16// SumInt32Slice 对slice中的元素求和func SumInt32Slice(slice []int32) int32// SumInt64Slice 对slice中的元素求和func SumInt64Slice(slice []int64) int64// SumFloat32Slice 对slice中的元素求和func SumFloat32Slice(slice []float32) float32// SumFloat64Slice 对slice中的元素求和func SumFloat64Slice(slice []float64) float64
// MapValueExists 判断map中的value是否存在func MapValueExists(m map[string]interface{}, value interface{}) bool// MapKeyExists 判断map中的key是否存在func MapKeyExists(m map[string]interface{}, key string) bool
// IntToString 将int类型转换为string类型func IntToString(n int) string// Int8ToString 将int8类型转换为string类型func Int8ToString(n int8) string// Int16ToString 将int16类型转换为string类型func Int16ToString(n int16) string// Int32ToString 将int32类型转换为string类型func Int32ToString(n int32) string// Int64ToString 将int64类型转换为string类型func Int64ToString(n int64) string
// Float32ToStr float32转字符串func Float32ToStr(f float32) string// Float64ToStr float64转字符串func Float64ToStr(input float64) string// Float32ToFloat64 float32转float64func Float32ToFloat64(f float32) float64// Float64ToFloat32 float64转float32func Float64ToFloat32(f float64) float32
// DecodeEmojiUnicode Emoji表情解码func DecodeEmojiUnicode(unicode string) string// EncodeEmojiUnicode Emoji表情编码func EncodeEmojiUnicode(emoji string) string
// HashSHA256 hash加密func HashSHA256(str string) string// Md5 MD5加密func Md5(string string) string
// BytesToStr 字节数组转字符串func BytesToStr(data []byte) string
// AnyToFloat32 将给定的值转换为float32func AnyToFloat32(i interface{}) (float32, error)// AnyToFloat64 将给定的值转换为float64func AnyToFloat64(i interface{}) (float64, error)// AnyToInt 将给定的值转换为 intfunc AnyToInt(i interface{}) (int, error)// AnyToInt8 将给定的值转换为 int8func AnyToInt8(i interface{}) (int8, error)// AnyToInt16 将给定的值转换为 int16func AnyToInt16(i interface{}) (int16, error)// AnyToInt32 将给定的值转换为 int32func AnyToInt32(i interface{}) (int32, error)// AnyToInt64 将给定的值转换为 int64func AnyToInt64(i interface{}) (int64, error)// AnyToStr 任意类型数据转stringfunc AnyToStr(i interface{}) string// AnyToUint 将给定的值转换为 uintfunc AnyToUint(i interface{}) (uint, error)// AnyToUint8 将给定的值转换为 uint8func AnyToUint8(i interface{}) (uint8, error)// AnyToUint16 将给定的值转换为 uint16func AnyToUint16(i interface{}) (uint16, error)// AnyToUint32 将给定的值转换为 uint32func AnyToUint32(i interface{}) (uint32, error)// AnyToUint64 将给定的值转换为 uint64func AnyToUint64(i interface{}) (uint64, error)// AnyToBool 将给定的值转换为boolfunc AnyToBool(i interface{}) bool
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号