12345678910111213141516171819202122232425262728 |
- package random
- import (
- "math/rand"
- "strings"
- )
- const (
- Uppercase = "ABCDEFGHIJKLMNOPQRSTUVWXYZ"
- Lowercase = "abcdefghijklmnopqrstuvwxyz"
- Alphabetic = Uppercase + Lowercase
- Numeric = "0123456789"
- Alphanumeric = Alphabetic + Numeric
- Symbols = "`" + `~!@#$%^&*()-_+={}[]|\;:"<>,./?`
- Hex = Numeric + "abcdef"
- )
- func String(length uint8, charsets ...string) string {
- charset := strings.Join(charsets, "")
- if charset == "" {
- charset = Alphanumeric
- }
- b := make([]byte, length)
- for i := range b {
- b[i] = charset[rand.Int63()%int64(len(charset))]
- }
- return string(b)
- }
|