以下是我正在使用的JSON结构示例:
{
"keys": {
"1": "Name1",
"2": "Name2",
"3": "Name3",
}
}
这里的结构是" id_number" :" name"
鉴于某人的姓名,我该如何归还他们的身份证号码? 如果可能的话,我想保留当前的结构,因为我从API中提取它,这就是所呈现的结构。
同样,如果结构如下:
{
"id_number": {
"Fname": "Name1",
"Lname": "Name2",
"phone": "number",
}
}
我怎样才能回归" id_number"如果给出" Name1"," Name2"或"号码"。
谢谢。
答案 0 :(得分:0)
我不确定你的任务到底是什么,但是如果你想在名字中找到一个id,那么这是一个代码示例:
use JSON::Parse 'parse_json';
my $json_str = '...';
my $json = parse_json($json_str);
# Get part of JSON with ids and names
my $keys_hash = $json->{'keys'};
# Iterate keys in JSON sub-part
for my $id (keys %{$keys_hash}) {
# Get name for a specified key
my $name = $keys_hash->{$id};
# If found desired name, return id
if ($name eq $name_to_find) {
return $id;
}
}