micro-account/pkg/common/utils/utils.go
2025-02-20 16:18:23 +08:00

83 lines
1.5 KiB
Go

package utils
import (
"github.com/shopspring/decimal"
"unicode"
)
//HasEnglish 判断字符串是否包含英文
func HasEnglish(s string) bool {
for _, r := range s {
if unicode.Is(unicode.Latin, r) {
return true
}
}
return false
}
//HasChinese 判断字符串是否包含中文
func HasChinese(s string) bool {
for _, r := range s {
if unicode.Is(unicode.Han, r) {
return true
}
}
return false
}
//HasEnglishAndChinese 判断字符串是否同时包含英文和中文
func HasEnglishAndChinese(s string) bool {
return HasEnglish(s) && HasChinese(s)
}
//FirstIsBiggerOrEqualDec 比较两个string转化成数字对比大小
func FirstIsBiggerOrEqualDec(dec1, dec2 decimal.Decimal) (bool, error) {
// 比较 decimal.Decimal 值
if dec1.LessThan(dec2) {
return false, nil
}
return true, nil
}
//FirstIsBiggerOrEqual 比较两个string转化成数字对比大小
func FirstIsBiggerOrEqual(dec1 decimal.Decimal, b string) (bool, error) {
dec2, err := decimal.NewFromString(b)
if err != nil {
return false, err
}
// 比较 decimal.Decimal 值
if dec1.LessThan(dec2) {
return false, nil
}
return true, nil
}
//FirstIsBiggerOrEqualString 比较两个string转化成数字对比大小
func FirstIsBiggerOrEqualString(a, b string) (bool, error) {
dec1, err := decimal.NewFromString(a)
if err != nil {
return false, err
}
dec2, err := decimal.NewFromString(b)
if err != nil {
return false, err
}
// 比较 decimal.Decimal 值
if dec1.LessThan(dec2) {
return false, nil
}
return true, nil
}