Go で特定の長さの一意のランダム文字列を生成する
Go では、指定された長さの範囲内で一意のランダム文字列を生成するのは簡単な作業です。ただし、必要な一意性のレベルを理解することが重要です。
Universally Unique UUID
グローバルな一意性が要件の場合、UUID (Universally Unique Identifier) が堅牢なソリューションを提供します。 UUID は 128 ビット値で構成され、膨大な組み合わせが可能になります。 Go で UUID を生成するには、次のアプローチを検討してください。
<code class="go">import ( "fmt" "github.com/google/uuid" ) func main() { u := uuid.New() fmt.Println(u.String()) }</code>
擬似ランダム文字列
それほど普遍的ではないオプションとして、Go の crypto/rand パッケージは疑似ランダムバイトを生成する安全な方法。これらのバイトは 16 進文字列に変換され、擬似ランダム文字列が生成されます。
<code class="go">package main import ( "crypto/rand" "fmt" ) func main() { n := 10 b := make([]byte, n) if _, err := rand.Read(b); err != nil { panic(err) } s := fmt.Sprintf("%X", b) fmt.Println(s) }</code>
その他の考慮事項
以上がGoで特定の長さの一意のランダムな文字列を生成するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。