首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >访问从JSON生成的PS自定义对象属性中的值

访问从JSON生成的PS自定义对象属性中的值
EN

Stack Overflow用户
提问于 2016-06-21 01:38:20
回答 1查看 1.3K关注 0票数 0

对于这样的JSON:

代码语言:javascript
运行
复制
{
"Tours": [{
    "Code": "r",
    "Name": "Tour 1",
    "Tournaments": [{
        "Number": "464",
        "Title": "Open Tournament 1"
    },
    {
        "Number": "047",
        "Title": "Open Tournament 2"
    }]
},
{
    "Code": "s",
    "Name": "Tour 2",
    "Tournaments": [{
        "Number": "524",
        "Title": "Tournament 3"
    },
    {
        "Number": "009",
        "Title": "Tournament 4"
    }]
}]
}

当转换为PS自定义对象并保存在$data变量中时,我可以像这样访问特定“巡回赛”的“锦标赛”下的值:

代码语言:javascript
运行
复制
$data.Tours[0].Tournaments
$data.Tours[1].Tournaments

但是,是否可以通过在“Tour”下指定“Code”或“Name”值来访问“锦标赛”属性和值?就像这样,也许:

代码语言:javascript
运行
复制
$data.Tours.Code['r'].Tournaments

实际上,在PS脚本中,我想要过滤数据的‘代码’下的‘巡回赛’,并获得潜在的‘锦标赛’(获得‘锦标赛’的具体‘代码’的‘巡回赛’)。

EN

回答 1

Stack Overflow用户

发布于 2016-06-21 01:55:49

您需要执行以下操作:

代码语言:javascript
运行
复制
$data.Tours | Where-Object { $_.Code -eq 'r' } | Select-Object -ExpandProperty 'Tournaments'

要获得连接的代码和锦标赛号码的列表(其中代码是"r"),您可以这样做:

代码语言:javascript
运行
复制
$data.Tours | Where-Object { $_.Code -eq 'r' } | ForEach-Object { $Code = $_.Code; $_.Tournaments | ForEach-Object { $Code + $_.Number }}
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/37928594

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档