Heim > Backend-Entwicklung > Golang > Wie erzeuge ich eine zufällige Zeichenfolge in Golang?

Wie erzeuge ich eine zufällige Zeichenfolge in Golang?

王林
Freigeben: 2024-06-05 17:23:41
Original
1080 Leute haben es durchsucht

In Golang können Sie zufällige Zeichenfolgen generieren, indem Sie die Funktion RandStringBytes im Paket crypto/rand verwenden. Diese Funktion akzeptiert zwei Parameter. Der erste Parameter gibt die Länge der zu generierenden Zufallszeichenfolge an und der zweite Parameter ist ein Byte-Array, das den zu verwendenden Zeichenbereich angibt.

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

Wie erzeuge ich zufällige Zeichenfolgen in Golang?

Das Generieren zufälliger Zeichenfolgen in Golang ist sehr einfach. Verwenden Sie einfach die Funktion RandStringBytes im Paket crypto/rand. crypto/rand 包中的 RandStringBytes 函数即可。

语法

func RandStringBytes(n int, alphabet []byte) ([]byte, error)
Nach dem Login kopieren

其中:

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

用法

以下是使用 RandStringBytes

Syntax

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)
}
Nach dem Login kopieren
Nach dem Login kopieren

Wobei:

  • n gibt die Länge der zu generierenden Zufallszeichenfolge an.
  • alphabet ist ein Byte-Array, das den zu verwendenden Zeichenbereich angibt.
Verwendung

Das Folgende ist ein Beispiel für die Verwendung der Funktion RandStringBytes zum Generieren einer zufälligen Zeichenfolge:

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)
}
Nach dem Login kopieren
Nach dem Login kopieren
Praktischer Fall

Generieren Sie eine zufällige alphanumerische Zeichenfolge von angegebenen Länge:

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)
}
Nach dem Login kopieren

🎜 Erzeugen Sie eine zufällige Kleinbuchstabenzeichenfolge mit der angegebenen Länge: 🎜🎜
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)
}
Nach dem Login kopieren
🎜🎜 Erzeugen Sie eine zufällige Hexadezimalzeichenfolge mit der angegebenen Länge: 🎜🎜rrreee

Das obige ist der detaillierte Inhalt vonWie erzeuge ich eine zufällige Zeichenfolge in Golang?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Verwandte Etiketten:
Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage