此问题已在此处有答案:
Is there any way to convert case-sensitive hashtable into case-insensitive hashtable?(1个答案)
7小时前关闭
我使用Get-AzResource
检索了所有Azure资源的列表,并在$Item
中存储了一条示例记录。我试图为每个资源获取所有标记,但Key的大写导致了大量记录丢失。我发现很多论坛都在声明以不同的方式创建哈希表,但是考虑到我是直接从Azure获得这个值的,我不确定具体如何做到这一点。对于下面的示例,我希望$Item.tags.Environment
将返回该值。
C:\> $Item
Name : resourceName
ResourceGroupName : rgName
ResourceType : Microsoft.Compute/disks
Location : eastus
ResourceId : uniqueResourceId
Tags :
Name Value
=========== =============
ENVIRONMENT Production
OWNER SharedService
C:\> $Item.Tags
Key Value
--- -----
ENVIRONMENT Production
OWNER SharedService
C:\> $Item.tags.gettype()
IsPublic IsSerial Name BaseType
-------- -------- ---- --------
True True Dictionary`2 System.Object
C:\> $Item.tags.ENVIRONMENT
Production
C:\> $Item.tags.ENVIRONMENt
C:\> $Item.tags.Environment
C:\>
有没有办法让现有的哈希表不区分大小写?
1条答案
按热度按时间dgsult0t1#
您可以使用不区分大小写的比较器创建一个新的字典对象,并将条目复制到该对象: