1. ホーム
  2. ruby-on-rails

[解決済み] Ruby on Railsです。10未満の数字の前にゼロを追加するには?

2022-08-09 06:14:29

質問

一桁の数字を二桁の数字に変換したいのですが、どのようにすればよいですか。

9 ==> 09
5 ==> 05
12 == 12
4 ==> 04

if-else文(数字が10以下ならgsubを実行)をたくさん入れられると思いますが、ひどいコーディングになりますね。Railsにnumber_with_precisionがあるのは知っていますが、それは10進数にしか適用されないようです。1桁の数字を2桁に変換する方法について何かアイデアはありませんか?

どのように解決するのですか?

あなたは sprintf '%02d', n ?

irb(main):003:0> sprintf '%02d', 1
=> "01"
irb(main):004:0> sprintf '%02d', 10
=> "10"

を参照したいかもしれません。 のフォーマットテーブルを参照したいかもしれません。 sprintf は、将来的には、しかし、この特定の例では '%02d' は整数を表示することを意味します ( d ) を表示します。 2 )、左詰めに空白ではなくゼロを入れる( 0 ).