【PowerShell】0埋めで桁を合わせる
PowerShellで0埋めで桁合わせをする方法です。
記載内容
①数値型に対する桁合わせ
②文字列型に対する数字での桁合わせ
③文字列型に対する文字列での桁合わせ
それぞれの注意点
②文字列型に対する数字での桁合わせ
③文字列型に対する文字列での桁合わせ
それぞれの注意点
①数値型に対して数字の0でパディングする
-f を使って数字の0でパディングします。
$int1 = 123 $int2 = "{0:0000000000}" -f $int1 $int3 = "{0:D10}" -f $int1 Write-Host $int1 Write-Host $int2 Write-Host $int3
【実行結果】
123 0000000123 0000000123
注意点
文字列に対してはパディングされません。
$str1 = "123" $str2 = "{0:0000000000}" -f $str1 $str3 = "{0:D10}" -f $str1 Write-Host $str1 Write-Host $str2 Write-Host $str3
【実行結果】
123 123 123
②文字列型に対して数字の0でパディングする
文字列に対してパディングする場合は数値型に変換してパディングします。
$str1 = "123" $str2 = "{0:0000000000}" -f [int]$str1 $str3 = "{0:D10}" -f [int]$str1 Write-Host $str1 Write-Host $str2 Write-Host $str3
【実行結果】
123 0000000123 0000000123
③文字列型に対して文字列の"0"でパディングする
PadLeft を使って"0"(文字列)でパディングします。
$str1 = "123" $str2 = $str1.PadLeft(10,"0") Write-Host $str1 Write-Host $str2
【実行結果】
123 0000000123
注意点
パディングに用いる値に数値を指定するとパディングされません。
その場合は空白を指定した結果と同じになります。
$str1 = "123" $str2 = $str1.PadLeft(10," ") $str3 = $str1.PadLeft(10,0) Write-Host "1234567890" Write-Host $str1 Write-Host $str2 Write-Host $str3
【実行結果】
1234567890 123 123
参考書
リンク
最近のコメント