Categorygithub.com/issue9/rands/v3
modulepackage
3.1.0
Repository: https://github.com/issue9/rands.git
Documentation: pkg.go.dev

# README

rands Build Status license codecov Go Reference

rands 为一个随机字符串生成工具。

从 v3 开始只支持 go1.22 以之后的版本

// 拿 [8,10) 数量的 rune,每个汉字都是完整的。
str := rands.String(8, 10, []rune("rands 为一个随机字符串生成工具"))

// 拿 [8,10) 数量的 byte,汉字可能会被截断。
str := rands.String(8, 10, []byte("rands 为一个随机字符串生成工具"))


// 生成一个带缓存功能的随机字符串生成器
r, err := rands.New(time.Now().Unix(), 100, 5, 7, []byte("asdfghijklmn"))
ctx,cancel := context.WithCancel(context.Background())
go r.Serve(ctx)
defer cancel()
str1 := r.String()
str2 := r.String()

安装

go get github.com/issue9/rands/v3

版权

本项目采用 MIT 开源授权许可证,完整的授权说明可在 LICENSE 文件中找到。

# Functions

Alpha 返回所有的字母.
AlphaNumber [Alpha] + [Number].
AlphaNumberPunct [Alpha] + [Number] + [Punct].
Append 将随机生成的字符串写入 buf.
Bytes 从 bs 中随机抓取 [min,max) 个字符并返回 NOTE: bs 的类型可以是 rune,但是返回类型始终是 []byte,所以用 len 判断返回值可能其值会很大。.
LowerAlpha 小写字母.
New 声明 [Rands] 如果 r 为 nil,将采用默认的随机函数; bufferSize 缓存的随机字符串数量,若为 0,表示不缓存;.
Number 返回所有的数字.
Punct 返回所有的标点符号.
String 产生一个随机字符串 其长度为[min, max),bs 可用的随机字符。.
UpperAlpha 大写字母.

# Structs

Rands 提供随机字符串的生成.

# Interfaces

Char 约束随机字符串字符的类型 byte 的性能为好于 rune。.