PowerShell 連想配列(ハッシュ)

PowerShellで連想配列を使用するサンプルです。


連想配列を使用するとこれまでの配列と違い、KEY-VALUEの関係でデータを処理することができます。

たとえば、数字と英語の関係でONEと入力すると1、TWOを入力すると2が参照できるなど。

連想配列の宣言方法

$名称 = @{KEY1 = VALUE1; KEY2 = VALUE2; KEY N = VALUE N;}

# 宣言
$table = @{"キリト" = "黒の剣士"; "アスナ" = "閃光"; "シリカ" = "竜使いシリカ"}

# 表示
$table["キリト"]

要素の追加

$名称.Add(KEY, VALUE)

$table = @{"キリト" = "黒の剣士"; "アスナ" = "閃光"; "シリカ" = "竜使いシリカ"}
$table.Add("有田春雪","シルバー・クロウ")

# 参照
foreach ($key in $table.Keys) {
    $key + ":" + $table[$key]
}

要素の削除

$名称.Remove(KEY)

$table = @{"キリト" = "黒の剣士"; "アスナ" = "閃光"; "シリカ" = "竜使いシリカ"}
$table.Remove("シリカ")

# 参照
foreach ($key in $table.Keys) {
    $key + ":" + $table[$key]
}

要素の変更

$名称[KEY] = VALUE

$table = @{"キリト" = "黒の剣士"; "アスナ" = "閃光"; "シリカ" = "竜使いシリカ"}
$table["キリト"] = "二刀流"

# 参照
foreach ($key in $table.Keys) {
    $key + ":" + $table[$key]
}

要素の存在確認

指定したKEYが存在すれば、True、存在しなければFlaseを返します。
$名称.Contains(KEY)

$table = @{"キリト" = "黒の剣士"; "アスナ" = "閃光"; "シリカ" = "竜使いシリカ"; "エギル" = $NULL}

# 参照 どちらもTrueとなる。
echo $table.Contains("キリト")
echo $table.Contains("閃光")

指定したKEYに対するVALUEが存在すれば、True、存在しなければFlaseを返します。
$名称.ContainsKey(KEY)

$table = @{"キリト" = "黒の剣士"; "アスナ" = "閃光"; "シリカ" = "竜使いシリカ"}

# 参照 キリトの参照がTRUE
echo $table.ContainsKey("キリト")
echo $table.ContainsKey("エギル")

指定したAVLUEに対するKEYが存在すれば、True、存在しなければFlaseを返します。
$名称.ContainsValue(VALUE)

$table = @{"キリト" = "黒の剣士"; "アスナ" = "閃光"; "シリカ" = "竜使いシリカ"}

# 参照 キリトの参照がTRUE
echo $table.ContainsValue("黒の剣士")
echo $table.ContainsValue("ヒースクリフ")

Bookmark this on Yahoo Bookmark
Bookmark this on Google Bookmarks
Share on LinkedIn
LINEで送る
Pocket