Search code examples
powershellnumber-formatting

Format variable as 4 digits with leading zeroes


A store number could be 1-4 digits.

Store #26 would be 0026 in respect to how devices are named, but I'd like to give the techs the ease of being able to type 26 to get the same result.

How can I take this variable and format it to always be 4 digits by appending the leading zeroes?

## Ask user for store number and affected AP number to query
$Global:Store = Read-Host "Store Number ";
$Global:apNumber= Read-Host "AP Number ";

## Clean up input for validity
IF($store.length -le 4) {
  $store = 
}

Solution

  • You would use -format operator:

    '{0:d4}' -f $variable
    

    https://ss64.com/ps/syntax-f-operator.html

    the above will work if your variable is an integer, if not you can cast it to integer:

    '{0:d4}' -f [int]$variable