どうも!リョクちゃです。
今回は、文字列で表した数値を指定の桁数に満たない場合は、
満たない部分をゼロで埋める方法を例を交えて紹介していきます。
ゼロで埋めることを”ゼロパディング”と呼びます、詳しい解説は後ほど。
ちなみに前回はこちら、
目次
ゼロパディングとは?
ゼロパディング(zero padding)又はゼロ埋めは、文字で数値を表す際に、書式で指定された桁数に満たない場合に、桁数をそろえるためゼロを付加することである。
出典:ゼロパディング-Wikipedia
https://ja.wikipedia.org/wiki/%E3%82%BC%E3%83%AD%E3%83%91%E3%83%87%E3%82%A3%E3%83%B3%E3%82%B0
と説明されています。
paddingには”詰める”や”埋める”といった意味があり、zero-paddingと書くことで、
ゼロ埋めと訳されます。
では、ゼロパディングがどんなところで使われるか、これについても解説します。
ゼロパディングはどんなとこで使われる?
例えば、アプリケーションの表示画面や帳票などで数値を表現する場合や、
有効桁数をそろえる時なんかに使われます。
<有効桁数3桁の場合>
1.0 → 1.00
<整数値の1を左詰め0で3桁にしたい場合>
1 → 001
右ゼロ埋めの方法
右にゼロ埋めした形式で表したい場合には、
とすることで表すことができます。
今回はゼロパディングなので埋めたい文字には”0″とします。
例として、下にいくつかコードを示します。
1 2 3 4 5 6 7 8 9 10 11 12 13 |
' ① 桁数4桁に満たない場合は、右に0埋めをする。 Dim rightPadding_1 As String = "1" Console.WriteLine(rightPadding_1.PadRight(4, "0")) ' 出力 ' 1000 ' ② 有効桁数4桁に満たない場合は、右に0埋めする。 Dim rightPadding_2 As String = "1.5" Console.WriteLine(rightPadding_2.PadRight(4 + 1, "0")) ' 出力 ' 1.500 |
②の例では、PadRightの第1引数に+1をしている。
これは、文字列の小数点も桁数としてカウントされてしまうからです。
このため有効桁数を0埋めする場合は留意してください。
左ゼロ埋めの方法
左にゼロ埋めした形式で表したい場合には、
とすることで表すことができます。
今回はゼロパディングなので埋めたい文字には”0″とします。
例として、下にいくつかコードを示します。
1 2 3 4 5 6 7 8 9 10 11 12 13 |
' ① 桁数6桁に満たない場合は、左に0埋めをする。 Dim leftPadding_1 As String = "1" Console.WriteLine(leftPadding_1.PadLeft(6, "0")) ' 出力 ' 000001 ' ② 桁数10桁に満たない場合は、左に0埋めをする。 Dim leftPadding_2 As String = "12345" Console.WriteLine(leftPadding_2.PadLeft(10, "0")) ' 出力 ' 0000012345 |
まとめ
今回はVB.Netでゼロパディングの使い方や使用例を解説していきました。
右側0埋めの場合は、
左側0埋めの場合は、
意外とゼロパディングは使う機会があると思うので、
これをきっかけに覚えてもらえたらなと思います。
ご覧いただきありがとうございます。
・こちらの書籍を参考にVB.Net勉強しています。