Maison > développement back-end > Golang > Comment générer une chaîne aléatoire dans Golang ?

Comment générer une chaîne aléatoire dans Golang ?

王林
Libérer: 2024-06-05 17:23:41
original
1028 Les gens l'ont consulté

Dans Golang, vous pouvez générer des chaînes aléatoires en utilisant la fonction RandStringBytes dans le package crypto/rand. Cette fonction accepte deux paramètres, le premier paramètre spécifie la longueur de la chaîne aléatoire à générer et le deuxième paramètre est un tableau d'octets spécifiant la plage de caractères à utiliser.

如何在 Golang 中生成随机字符串?

Comment générer des chaînes aléatoires dans Golang ?

Générer des chaînes aléatoires dans Golang est très simple, utilisez simplement la fonction RandStringBytes dans le package crypto/rand. crypto/rand 包中的 RandStringBytes 函数即可。

语法

func RandStringBytes(n int, alphabet []byte) ([]byte, error)
Copier après la connexion

其中:

  • n 指定要生成的随机字符串的长度。
  • alphabet 是一个字节数组,指定要使用的字符范围。

用法

以下是使用 RandStringBytes

Syntaxe

package main

import (
    "crypto/rand"
    "fmt"
)

func main() {
    n := 10
    charset := []byte("abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789")
    b, err := rand.RandStringBytes(n, charset)
    if err != nil {
        fmt.Println(err)
        return
    }
    fmt.Printf("随机字符串:%s\n", b)
}
Copier après la connexion
Copier après la connexion

Où :

  • n spécifie la longueur de la chaîne aléatoire à générer.
  • alphabet est un tableau d'octets spécifiant la plage de caractères à utiliser.
Utilisation

Ce qui suit est un exemple d'utilisation de la fonction RandStringBytes pour générer une chaîne aléatoire :

package main

import (
    "crypto/rand"
    "fmt"
)

func main() {
    n := 10
    charset := []byte("abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789")
    b, err := rand.RandStringBytes(n, charset)
    if err != nil {
        fmt.Println(err)
        return
    }
    fmt.Printf("随机字符串:%s\n", b)
}
Copier après la connexion
Copier après la connexion
Cas pratique

Générer une chaîne alphanumérique aléatoire de spécifié length:

package main

import (
    "crypto/rand"
    "fmt"
)

func main() {
    n := 10
    charset := []byte("abcdefghijklmnopqrstuvwxyz")
    b, err := rand.RandStringBytes(n, charset)
    if err != nil {
        fmt.Println(err)
        return
    }
    fmt.Printf("随机字符串:%s\n", b)
}
Copier après la connexion

🎜 Générer une chaîne minuscule aléatoire de longueur spécifiée: 🎜🎜
package main

import (
    "crypto/rand"
    "fmt"
)

func main() {
    n := 10
    charset := []byte("0123456789abcdef")
    b, err := rand.RandStringBytes(n, charset)
    if err != nil {
        fmt.Println(err)
        return
    }
    fmt.Printf("随机字符串:%s\n", b)
}
Copier après la connexion
🎜🎜 Générer une chaîne hexadécimale aléatoire de longueur spécifiée: 🎜🎜rrreee

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Étiquettes associées:
source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal