目的
以前Rustでランダム文字列を作成するという記事を書いています。そちらではrand0.5系でランダム文字列を作成しています。
ここではrand8.5系ではどのように変わったかを見てみます。
コード
main.rs
use rand::distributions::{Alphanumeric, DistString};
// ランダム文字列を生成する
fn main {
let mut rng = rand::thread_rng();
let random_code = Alphanumeric.sample_string(&mut rng, 32);
}
結果
2ZN1htXkSjnVzZroFJiHXi2HZXvuFJRS
まとめ
大分シンプルになりました。
AlphanumericはA-Za-z0-9の範囲で生成してくれます。
もうひとつStandardがあり、範囲は「Uniformly distributed over all Unicode scalar values」とのことなので実行すると以下のようになります。
結果
𦹡𣃠𫱜𑇘𬙊𡻌𥹷𐘱𡬇