[解決済み] PowerShellで、変数が数値を保持しているかどうかをテストするにはどうすればよいですか?
2022-02-10 10:24:58
質問
PowerShellで、変数が数値を保持しているかどうかをテストするにはどうすればよいですか?
現在、このようにしようとしているのですが、いつも次のような結果が返ってくるようです。
false
.
add-type -Language CSharpVersion3 @'
public class Helpers {
public static bool IsNumeric(object o) {
return o is byte || o is short || o is int || o is long
|| o is sbyte || o is ushort || o is uint || o is ulong
|| o is float || o is double || o is decimal
;
}
}
'@
filter isNumeric($InputObject) {
[Helpers]::IsNumeric($InputObject)
}
PS> 1 | isNumeric
False
解決方法は?
フィルターを以下のように変更してください。
filter isNumeric {
[Helpers]::IsNumeric($_)
}
function
は
$input
変数にパイプライン情報を格納するのに対し
filter
は、特殊な変数
$_
には、現在のパイプライン・オブジェクトが含まれています。
編集する
powershell 構文では、filter (w/o add-type) を使用することができます。
filter isNumeric() {
return $_ -is [byte] -or $_ -is [int16] -or $_ -is [int32] -or $_ -is [int64] `
-or $_ -is [sbyte] -or $_ -is [uint16] -or $_ -is [uint32] -or $_ -is [uint64] `
-or $_ -is [float] -or $_ -is [double] -or $_ -is [decimal]
}
関連
-
[解決済み] PowerShellでコードをコメントアウトする方法とは?
-
[解決済み] PowerShellで文字列と変数を連結する方法は?
-
[解決済み] PowerShellでコマンドライン引数を処理する方法
-
[解決済み] PowerShellスクリプトに引数を渡すにはどうしたらいいですか?
-
[解決済み] PowerShellで文字列がNULLまたは空であるかどうかを確認するにはどうすればよいですか?
-
[解決済み] PowerShellで関数に複数のパラメータを渡すにはどうすればよいですか?
-
[解決済み] Windows PowerShellで現在のユーザー名を取得する方法を教えてください。
-
[解決済み】PowerShellスクリプトを実行する方法
-
[解決済み] PowerShellでファイル内の文字列をすべて置き換えるにはどうすればよいですか?
-
[解決済み】PowerShellの関数の戻り値について
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
[解決済み】powershellにターミネーターがない。"
-
[解決済み] PowerShell NTFSの高度なパーミッションの設定
-
[解決済み] Get-ADUser でのエラー: 無効な列挙コンテキスト
-
[解決済み] PowerShellでSharePoint 2013の連絡先リストに項目を作成する方法は?
-
[解決済み] Get-ADUserとフィルタを含むForEach-Objectループ
-
[解決済み] Base64の文字列をデコードするには?
-
[解決済み] PowerShellでディレクトリを変更する
-
[解決済み] PowerShellを使用してSFTPにファイルをアップロードする
-
[解決済み] powershell内でキーストロークを実行する方法は?
-
[解決済み] Install-Module : 'Install-Module' という用語は、コマンドレット名として認識されません。