当前位置: 首页 > 面试题库 >

通过perl解析以JSON编码的数组

范建华
2023-03-14
问题内容

我用下面的Perl代码来解析在JSON数组,使用JSON模块。但是返回的数组长度为1,我无法对其进行正确的迭代。所以问题是我无法使用返回的数组。

#!/usr/bin/perl
use strict;

my $json_text = '[ {"name" : "abc", "text" : "text1"}, {"name" : "xyz", "text" : "text2"} ]';

use JSON;
use Data::Dumper::Names;

my @decoded_json = decode_json($json_text);
print Dumper(@decoded_json), length(@decoded_json), "\n";

输出结果为:

$VAR1 = [
     {
        'text' => 'text1',
        'name' => 'abc'
      },
      {
        'text' => 'text2',
        'name' => 'xyz'
      }
    ];
1

问题答案:

decode_json函数返回一个arrayref而不是一个列表。您必须取消引用它才能获取列表:

my @decoded_json = @{decode_json($json_text)};

您可能需要阅读perldoc perlreftutperldoc perlref



 类似资料:
  • 本文向大家介绍通过原理解析Spring mvc的内置编码过滤器,包括了通过原理解析Spring mvc的内置编码过滤器的使用技巧和注意事项,需要的朋友参考一下 前言 在Spring mvc框架中是如何解决从页面传来的字符串的编码问题的呢? 下面我们来看看Spring框架给我们提供过滤器CharacterEncodingFilter,话不多说了,来一起看看详细的介绍吧。 web.xml 中 添加如下

  • 问题内容: 但是我无法从中得到答案。上面链接的答案: 它运作良好,但我想对泛型使用隐式运算符。见下文: 然后,我尝试将Class参数传递给方法: 然后出现一个错误: 谁能告诉我为什么会出现此错误?TypeToken类不支持隐式运算​​符吗? 问题答案: 您可以这样:

  • 我已经下载了json和我的对话档案。我坚持使用奇怪的编码。 json的例子: 应该是这样的: 我正试图这样反序列化它: 不幸的是,输出如下: 有人知道Facebook如何编码json吗?我尝试了几种方法,但没有结果。 谢谢你的帮助。

  • 本文向大家介绍Jquery解析Json格式数据过程代码,包括了Jquery解析Json格式数据过程代码的使用技巧和注意事项,需要的朋友参考一下 今天稍微学习了一下Json,JSON (JavaScript Object Notation) 是一种轻量级的数据交换格式。 易于人阅读和编写。同时也易于机器解析和生成。 JSON采用完全独立于语言的文本格式,但是也使用了类似于C语言家族的习惯(包括C,

  • 在上一章,已经讲过在 codec 中使用 JSON 编码。但是,有些日志可能是一种复合的数据结构,其中只是一部分记录是 JSON 格式的。这时候,我们依然需要在 filter 阶段,单独启用 JSON 解码插件。 配置示例 filter { json { source => "message" target => "jsoncontent" } }

  • 我正在从谷歌地图上提取一些数据,但我似乎不能用它做任何事情。下面是我的代码: 你知道我做错了什么吗?