【PowerShell】数値であるかのチェック
数値であるかのチェック
数値であるかのチェックをするには次の構文を使います。
# 構文
[double]::TryParse(チェックする数値や文字など,[ref]$null)
# 実行例
[double]::TryParse(1,[ref]$null) # True
[double]::TryParse(1.23,[ref]$null) # True
[double]::TryParse('a',[ref]$null) # False
[double]::TryParse('123',[ref]$null) # False
[double]::TryParse('?',[ref]$null) # False
[double]::TryParse(null,[ref]$null) # エラー
チェックを使ったIF文
上の数値チェックを使ったIF文の例です。
# 例1 : Trueが返る例
if([double]::TryParse(1,[ref]$null) -eq $true)
{
# True時の処理
Write-Host "True"
}else{
# False時の処理
Write-Host "False"
}
# 例2 : Falseが返る例
if([double]::TryParse("a",[ref]$null) -eq $true)
{
# True時の処理
Write-Host "True"
}else{
# False時の処理
Write-Host "False"
}