我在PERL脚本中有两个字符串,如下所示。
$labels = "firstname|lastname|email";
$values = 'krishna|mohan|some@gmail.com';
现在我想从这两个srings构建一个JSON fromat。我需要基于|
(管道)符号拆分(爆炸)两个字符串并构造一个JSON格式,如下所示
{"firstname":"krishna","lastname":"mohan","email":"krishna@gmail.com"}
我怎样才能做到这一点?任何想法将不胜感激。
答案 0 :(得分:3)
使用split
来"爆炸"字符串,从结果中构建哈希。然后,使用JSON将其转换为JSON:
#!/usr/bin/perl
use warnings;
use strict;
use JSON;
my $labels = 'firstname|lastname|email';
my $values = 'krishna|mohan|some@gmail.com'; # Doesn't work with double quotes!
my %hash;
@hash{ split /\|/, $labels } = split /\|/, $values;
print to_json(\%hash);