如何从Powershell中的阵列创建KeyCollection?
假设我有这样的散列:如何从Powershell中的阵列创建KeyCollection?,powershell,Powershell,假设我有这样的散列: $NATO = @{ "A" = "Alpha"; "B" = "Bravo"; "C" = "Charlie"; # ... "Y" = "Yankee"; "Z" = "Zulu"; } 我可以使用$NATO.keys密钥集合获取哈希的所有值: $NATO[$NATO.keys] # gives me all values 但如果我想传递键的子集,以
$NATO = @{
"A" = "Alpha";
"B" = "Bravo";
"C" = "Charlie";
# ...
"Y" = "Yankee";
"Z" = "Zulu";
}
我可以使用$NATO.keys
密钥集合获取哈希的所有值:
$NATO[$NATO.keys] # gives me all values
但如果我想传递键的子集,以获得值的子集,我不能这样做:
$NATO["BUNYK".ToCharArray()] # gives me nothing, but I want
# Bravo, Uniform, November, Yankee, Kilo
你知道怎么做吗 哈希表将键存储为对象,而不一定是简单的字符串。示例中的键是字符串,但您试图将它们作为[char]对象访问。处理示例的最简单方法是将[char[]]数组强制转换为[string[]]数组:
$NATO[([string[]] "BUNYK".ToCharArray())]
哈希表将键存储为对象,不一定是简单的字符串。示例中的键是字符串,但您试图将它们作为[char]对象访问。处理示例的最简单方法是将[char[]]数组强制转换为[string[]]数组:
$NATO[([string[]] "BUNYK".ToCharArray())]
哈希表将键存储为对象,不一定是简单的字符串。示例中的键是字符串,但您试图将它们作为[char]对象访问。处理示例的最简单方法是将[char[]]数组强制转换为[string[]]数组:
$NATO[([string[]] "BUNYK".ToCharArray())]
哈希表将键存储为对象,不一定是简单的字符串。示例中的键是字符串,但您试图将它们作为[char]对象访问。处理示例的最简单方法是将[char[]]数组强制转换为[string[]]数组:
$NATO[([string[]] "BUNYK".ToCharArray())]
您还可以将字符串数组通过管道传输到
ForEach对象中
循环:
[string[]]'BUNYK'.ToCharArray() | % { $NATO[$_] }
您还可以将字符串数组通过管道传输到
ForEach对象中
循环:
[string[]]'BUNYK'.ToCharArray() | % { $NATO[$_] }
您还可以将字符串数组通过管道传输到
ForEach对象中
循环:
[string[]]'BUNYK'.ToCharArray() | % { $NATO[$_] }
您还可以将字符串数组通过管道传输到
ForEach对象中
循环:
[string[]]'BUNYK'.ToCharArray() | % { $NATO[$_] }