valifuncs

package
v0.0.7 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Apr 22, 2025 License: MIT Imports: 6 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

View Source
var (
	EnLower = SloveAll[string](
		"无法去除空格,且不能识别小写字母",
		StrTrim,
		StrToLower,
	)
	EnUpper = SloveAll[string](
		"无法去除空格,且不能识别大写字母",
		StrTrim,
		StrToUpper,
	)
	Email    = MatchRegex(`^[a-zA-Z0-9._%+-]+@[a-zA-Z0-9.-]+\.[a-zA-Z]{2,}$`)
	PhoneCN  = MatchRegex(`^1[3-9]\d{9}$`)
	Username = ValidateAll[string](
		"用户名只能由字母、数字、下划线组成,且长度在4-20个字符之间",
		MinLen(4),
		MaxLen(20),
		MatchRegex(`^[a-zA-Z0-9_]+$`),
	)
	Password = ValidateAll[string](
		"用户名必须包含大写字母、小写字母和数字,且长度在8-32个字符之间",
		MinLen(8),
		MaxLen(32),
		MatchRegex(`[A-Z]`),
		MatchRegex(`[a-z]`),
		MatchRegex(`[0-9]`),
	)
)

常用预设验证 示例:Email, PhoneCN, Username, Password

Functions

func Contains

func Contains(substr string) func(value string) error

Contains 字符串必须包含指定子串验证

func EndsWith

func EndsWith(suffix string) func(value string) error

EndsWith 字符串必须以指定子串结尾验证

func ExactLen

func ExactLen(length int) func(value string) error

ExactLen 字符串长度必须等于指定长度验证

func MatchRegex

func MatchRegex(pattern string) func(value string) error

MatchRegex 字符串必须匹配指定正则表达式验证

func MaxLen

func MaxLen(maxLen int) func(value string) error

MaxLen 字符串最大长度验证

func MinLen

func MinLen(minLen int) func(value string) error

MinLen 字符串最小长度验证

func NotContains

func NotContains(substr string) func(value string) error

NotContains 字符串不能包含指定子串验证

func NumEqualTo

func NumEqualTo[T Number](target T) func(value T) error

NumEqualTo 验证值是否等于指定值

func NumFromStr

func NumFromStr[T Number](value string) (T, error)

func NumInList

func NumInList[T Number](NumList []T) func(value T) error

NumInList 返回验证值是否在[min, max]范围内的函数

func NumMaxValue

func NumMaxValue[T Number](maxValue T) func(value T) error

NumMaxValue 返回验证值是否不大于最大值的函数

func NumMinValue

func NumMinValue[T Number](minValue T) func(value T) error

NumMinValue 返回验证值是否不小于最小值的函数

func NumMultipleOf

func NumMultipleOf[T Number](multiple T) func(value T) error

NumMultipleOf 验证值是否为指定数的倍数

func NumNegative

func NumNegative[T Number]() func(value T) error

NumNegative 验证值是否为负数

func NumNonNegative

func NumNonNegative[T Number]() func(value T) error

NumNonNegative 验证值是否为非负数

func NumNonPositive

func NumNonPositive[T Number]() func(value T) error

NumNonPositive 验证值是否为非正数

func NumNotEqualTo

func NumNotEqualTo[T Number](target T) func(value T) error

NumNotEqualTo 验证值是否不等于指定值

func NumPositive

func NumPositive[T Number]() func(value T) error

NumPositive 验证值是否为正数

func NumRange

func NumRange[T Number](min, max T) func(value T) error

NumRange 返回验证值是否在[min, max]范围内的函数

func SloveAll

func SloveAll[T any](msg string, sloves ...func(T) (T, error)) func(T) (T, error)

SloveAll 组合处理函数

func StartsWith

func StartsWith(prefix string) func(value string) error

StartsWith 字符串必须以指定子串开头验证

func StrInList

func StrInList(subList []string) func(value string) error

StrInList 字符串必须包含指定子串列表验证

func StrNotEmpty

func StrNotEmpty() func(value string) error

StrNotEmpty 字符串不能为空验证

func StrToLower

func StrToLower(value string) (string, error)

StrToLower 字符串转为小写

func StrToUpper

func StrToUpper(value string) (string, error)

StrToUpper 字符串转为大写

func StrTrim

func StrTrim(value string) (string, error)

StrTrim 基础字符串处理函数

func StrTrimAll

func StrTrimAll(value string) (string, error)

StrTrimAll 去除两侧空格

func StrTrimLeft

func StrTrimLeft(value string) (string, error)

StrTrimLeft 去除左侧空格

func StrTrimRight

func StrTrimRight(value string) (string, error)

StrTrimRight 去除右侧空格

func ValidateAll

func ValidateAll[T any](msg string, validators ...func(T) error) func(T) error

ValidateAll 组合验证函数

Types

type Number

type Number interface {
	~int | ~int8 | ~int16 | ~int32 | ~int64 |
		~uint | ~uint8 | ~uint16 | ~uint32 | ~uint64 | ~uintptr |
		~float32 | ~float64
}

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL