PowerShellの連想配列操作まとめ!値を取得する方法も!

powershell

PowerShellの連想配列操作を知りたいときはないでしょうか。

けど、そんな中で悩むことは、

・PowerShellの連想配列の使い方がよくわからない
・PowerShellの連想配列操作で値を取得したいが方法がよくわからない

ですよね。

今回はそんなお悩みを解決する

・PowerShellの連想配列の操作方法
・PowerShellの連想配列操作で値を取得する方法

についてまとめます!

PowerShellの連想配列とは

連想配列について

まず連想配列について説明をします。

連想配列は、キーと言われる添え字に、値を割り当てることができる配列のことです。

配列はこれまで数字をインデックスとする構造となっていますが、連想配列はその数字を文字列に置き換えたという形になります。

例えば以下のような表で連想配列を表すことができます。
1行目がキーとなる部分で2行以降がキーに紐づく値となります。

ID 商品名 単価
100 みかん 120
200 りんご 200

PowerShellの連想配列について

PowerShellの連想配列について説明をします。

PowerShellの連想配列はハッシュテーブルまたはディクショナリと呼ばれていて、ハッシュテーブルが通称とされています。

PowerShell では連想配列はオブジェクト型として扱われます。

ハッシュテーブルを作成するには、構文を使用してキーと値のペアを追加します。

PowerShellの連想配列構文

PowerShellの連想配列構文は以下の通りです。
要素の中はキーと値を=でつなげ、要素を増やす場合は「;」で次の要素をつなげるか改行していきます。

$rensoHairetsu = @{ "キー1" = "値1"; "キー2" = "値2" }

または

$rensoHairetsu = @{
    "キー1" = "値1"
    "キー2" = "値2"
}

PowerShellの連想配列の操作方法

PowerShellの連想配列の操作方法について説明をします。

連想配列に要素を追加

PowerShell で連想配列に要素を追加するには、Add()メソッドを使用するか、配列表記で新しいキーに値を割り当てることにより、連想配列に要素を追加できます。

$rensoHairetsu = @{
    "キー1" = "値1"
    "キー2" = "値2"
}
$rensoHairetsu.Add("キー3", "値3")

または、

$rensoHairetsu = @{
    "キー1" = "値1"
    "キー2" = "値2"
}
$rensoHairetsu["キー3"] = "値3"

連想配列の要素の値を変更

連想配列の既存のキーの値を変更するには、配列表記を使用して新しい値をキーに割り当てることができます。

$rensoHairetsu = @{
    "キー1" = "値1"
    "キー2" = "値2"
}
$rensoHairetsu["キー1"] = "New値1"

Set_Item()メソッドでキーと新しい値を設定すると新しい値をキーに割り当てることができます。

$rensoHairetsu = @{
    "キー1" = "値1"
    "キー2" = "値2"
}
$rensoHairetsu.Set_Item("キー1", "New値1")

連想配列の要素を削除

Remove()メソッドを使用し、連想配列の要素を削除することができます。

$rensoHairetsu.Remove("キー1")

Clear()メソッドを使用すると、連想配列の要素をすべてを削除することができます。

$rensoHairetsu.Clear()

PowerShellの連想配列操作で値を取得する方法

PowerShellの連想配列操作で値を取得する方法について説明をします。

キーを指定し要素の値を取得する

連想配列変数にキーを指定することにより、キーに割り当てられた値を取得することができます。

$rensoHairetsu = @{
    "キー1" = "値1"
    "キー2" = "値2"
}
Write-Host $rensoHairetsu["キー1"]

結果です。

値1

繰り返し処理ですべての要素の値を取得する

繰り返し処理ですべての要素の値を取得することができます。

$rensoHairetsu = @{
    "キー1" = "値1"
    "キー2" = "値2"
}
$rensoHairetsu.GetEnumerator() | Foreach-Object {
    Write-Host $_.Key ": " $_.Value
}

個々の要素は$_に格納され、.keyプロパティでキーを、.Valueプロパティで値を取得することができます。

結果です。

キー1 : 値1
キー2 : 値2

要素の数を取得する

.Countプロパティで連想配列の要素の件数を数えることができます。

$rensoHairetsu = @{
    "キー1" = "値1"
    "キー2" = "値2"
}
Write-Host $rensoHairetsu.Count

結果です。

2

さいごに

いかがでしょうか。

今回は、

・PowerShellの連想配列の操作方法
・PowerShellの連想配列操作で値を取得する方法

についてまとめました。

また、他にも便利な方法がありますので、よろしければご参照頂ければと思います。



この記事の関連キーワード

こちらの記事の関連キーワード一覧です。クリックするとキーワードに関連する記事一覧が閲覧できます。








コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です