プログラミング、フリーダイビング、ブロックチェーンのブログ

プログラミング道場

自分の市場価値を知りたい人にオススメの記事です

【すぐできる】エンジニアとしての市場価値を診断してみよう!

目次1 エンジニアが市場価値を把握しておくべき理由2 エンジニアの市場価値を決める要素3 エンジニアにおすすめしたい市場価値診断ツール4 【最後に】正確な市場価値を知るなら転職エージェント エンジニアが市場価値を把握しておくべき理由 エンジ ...

続きを見る


副業を考えているエンジニアにオススメの記事です

【土日や在宅OK】エンジニアの副業におすすめの案件紹介サイト

目次1 クラウドテック2 ITプロパートナーズ3 BIGDATA NAVI クラウドテック クラウドテックは副業やフリーランス向けの案件を扱うサイトです。 88%の方がリモートワーク案件で稼働中です。 リモートワークで働きたい人には、是非、 ...

続きを見る


私がオススメするプログラミング教材です

私がおすすめするプログラミング教材のまとめ【書籍】

目次1 これからエンジニアになりたい人へ向けた本2 プログラミング言語3 アプリ開発4 サーバー、インフラ、セキュリティなど5 機械学習系6 ゲーム開発7 データベース8 子供向け9 デザイン10 資格11 組織作り12 自作シリーズ13 ...

続きを見る

【Ruby入門】Rubyで乱数やランダムな文字列を生成しよう

更新日:

記事の内容


この記事では、Rubyで乱数やランダムな文字列を生成する方法を紹介します。
また、Base64エンコードやBase58という規格についても説明します。

乱数の作り方

randというメソッドを使うと、乱数を生成することができます。

ランダムな文字列の作り方

アルファベットから作る文字列の作り方とsecurerandomを使った文字列の生成方法の紹介です。




Base64の作成方法

Base64とは、バイナリデータを扱うためのエンコード方式で、アルファベット、数字と「+」「/」「=」を使います。
生成された文字列の長さは、指定した数値の約4/3倍になります。
通常のBase64では、URLで使用できない文字を含みます。
ここでは、URLでも使えるURL safeなbase64エンコードも合わせて紹介します。

Base58の作成方法

Base58とは、バイナリデータを58種類の文字で表現するフォーマットです。
ただし、そこから人間が間違えやすい文字を削除しています。
小文字のエル(l)、大文字のオオ(O)、大文字のアイ(I)を削除しています。

人間が視認しやすくなるので、クーポンコードを作成する時や、ビットコインのアドレスを作成する時に使われます。

もうちょっと、応用を勉強したいという人は、こちらの記事も読んでみて下さい。

【Ruby入門】クジを引くロジック【抽選ロジック】

目次1 クジ引き2 まとめ クジ引き 重み付けされた配列を元に、出現回数が異なることが確認できるはずです。 all_user_point_hashのvalueの値を変更して、出現回数の変化を確認してみて下さい。 また、より小さい確率でコント ...

続きを見る

Ruby初心者から抜け出したい人に、オススメの本です



Rubyをより詳しく勉強したい人には、この記事がオススメです

Rubyの学習でおすすめの本と動画【2023年最新】

▼ Ruby on Railsについては、この記事で紹介しています 目次1 動画教材2 初心者向け【入門編】3 中級者向け4 上級者向け 動画教材 "ちゃんと" Ruby を学ぼう! ー オブジェクト指向機能ってなんだ? ▼ 興味がある方は ...

続きを見る


Ruby on Railsをより詳しく勉強したい人には、この記事がオススメです

Ruby on Railsの学習でおすすめの本と動画【2023年最新】

目次1 動画教材2 初心者向け3 中級者向け4 上級者向け 動画教材 Ruby Metaprogramming - Complete Course ▼ 興味がある方は、画像をクリック 英語版です。 Rubyのメタプログラミングについて学べま ...

続きを見る


Gitをより詳しく勉強したい人には、この記事がオススメです

Gitの学習でおすすめの本と動画【2023年最新】

目次1 動画教材2 漫画?でわかりやすく学ぶ入門書の定番3 初心者向け4 中級者向け5 上級者向け 動画教材 もう怖くないGit!チーム開発で必要なGitを完全マスター ▼ 興味がある方は、画像をクリック Gitの基本コマンド、ブランチやマ ...

続きを見る

関連コンテンツ

-Ruby, プログラミング

Copyright© プログラミング道場 , 2023 All Rights Reserved Powered by AFFINGER4.