gpt4 book ai didi

arrays - 将 JSON 对象列表解码为 perl 中的哈希数组

转载 作者:行者123 更新时间:2023-12-04 17:59:52 24 4
gpt4 key购买 nike

我是Perl的新手,我想将以下JSON解析成哈希数组,(首选map方法)

[
{ "name" : "Theodor Nelson",
"id": "_333301",
"address": "Hello_world"
},
{ "name": "Morton Heilig",
"id": "_13204",
"address": "Welcome"
}
]

然后只想打印“

name

id

在 foreach 循环中的值。任何形式的帮助将不胜感激。

最佳答案

use JSON qw(from_json);

# The JSON module likes to die on errors
my $json_data = eval { return from_json($json); };
die "$@ while reading JSON" if $@; # Replace by your error handling
die "JSON top level is no array" unless ref($json_data) eq 'ARRAY'; # Replace by your error handling

for my $hashref (@{$json_data}) {
print $hashref->{name}."\n";
print $hashref->{id}."\n";
}

根据您的使用情况,错误处理显然是可选的。一次性或手动脚本可能会死掉,而生产级脚本应该有适当的错误处理。

JSON模块是 JSON::PP 的包装器和 JSON::XS .它选择本地系统上可用的模块。 JSON::XS 更快,但可能未安装。 JSON::PP 是纯 Perl(没有外部 C/C++ 库)并且是 Perl 核心的一部分。

fordereferences the Array-reference代表您的顶级 JSON 数组。每个项目都应该是一个哈希引用。点击链接获取有关每个主题的更多信息。

关于arrays - 将 JSON 对象列表解码为 perl 中的哈希数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36846147/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com