12345678910111213141516171819202122232425262728293031323334353637383940414243444546 |
- package random
- import (
- "math/rand"
- )
- var (
- numSeq [10]rune
- lowerSeq [26]rune
- upperSeq [26]rune
- numLowerSeq [36]rune
- numUpperSeq [36]rune
- allSeq [62]rune
- )
- func init() {
- for i := 0; i < 10; i++ {
- numSeq[i] = rune('0' + i)
- }
- for i := 0; i < 26; i++ {
- lowerSeq[i] = rune('a' + i)
- upperSeq[i] = rune('A' + i)
- }
- copy(numLowerSeq[:], numSeq[:])
- copy(numLowerSeq[len(numSeq):], lowerSeq[:])
- copy(numUpperSeq[:], numSeq[:])
- copy(numUpperSeq[len(numSeq):], upperSeq[:])
- copy(allSeq[:], numSeq[:])
- copy(allSeq[len(numSeq):], lowerSeq[:])
- copy(allSeq[len(numSeq)+len(lowerSeq):], upperSeq[:])
- }
- func Seq(n int) string {
- runes := make([]rune, n)
- for i := 0; i < n; i++ {
- runes[i] = allSeq[rand.Intn(len(allSeq))]
- }
- return string(runes)
- }
- func Num(n int) int {
- return rand.Intn(n)
- }
|