Десятичный формат Powershell без запятой - PullRequest
3 голосов
/ 10 февраля 2012

Как мне отформатировать вывод powershell для десятичной дроби без запятой? Я использую '{0: N2}' -f $ a, но не хочу запятую для тысяч.

Ответы [ 4 ]

7 голосов
/ 10 февраля 2012

Существует множество строк различного формата.В вашем случае я бы предложил:

'{0: d2}' -f $ a

Хорошая ссылка - Форматирование строки в C #

На самом деле вот несколько примеров:

$a = 124000.4201

 '{0:g2}' -f $a
1.2e+05

'{0:f2}' -f $a
124000.42

# and since it is using the .net formatter for all this after all
'{0:00.0000}' -f $a
124000.4201
0 голосов
/ 10 февраля 2012

Используйте 0 для спецификатора точности

PS> $a = 123.456
PS> '{0:N0}' -f 123.456
123

Вы также можете привести к int:

PS> [int]$a
123

Или используйте регулярное выражение, чтобы получить любой символ до точки

PS> $a -replace '^([^.]+).+','$1'
123

или с использованием split:

PS> "$a".split('.')[0]
123

или математика ...

PS> [math]::Floor($a)
123

И есть много других способов.

0 голосов
/ 10 февраля 2012

Попробуйте использовать класс .net:

[string]::Format("{0:0.00}" ,$a)
0 голосов
/ 10 февраля 2012

Вы можете попробовать фрагмент кода ниже:

'{0:N2}' -f $a | foreach {$_.replace(",","") }
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...