【发布时间】:2013-07-14 05:47:27
【问题描述】:
我想在 perl 中将以下两个字符(“-”和“_”)转换为 JSON 格式。 用作 JSON。 但我未能转换。我想知道如何转换这两个独特的字符。
格式
'--' -> ':'
'-_' -> '{'
'_-' -> '}'
'__' -> ','
这是我的程序
#!/usr/local/bin/perl
use strict;
use warnings;
sub toJsonFormat {
my $self = shift;
my $str = shift;
$str =~ s/-_/{/g;
$str =~ s/_-/}/g;
$str =~ s/--/:/g;
$str =~ s/__/,/g;
return $str;
}
这是示例
试用代码
toJsonFormat('-_service---_key--value_-__-_key--value_-__service---_key--value_-_-')
预计
"{service:{key:value},{key:value},service:{key:value}}"
得到
'{service:{key:value_{_{key:value_{_service:{key:value_{-'
如果您有任何转换为预期字符的想法,请告诉我。
提前致谢。
【问题讨论】:
-
如何拆分字符串并将其存储在哈希中。然后你可以
use JSON。 metacpan.org/module/JSON -
我不明白。您的预期输出不是有效的 JSON。
-
@innaM 知道。由于我只能使用“-”和“_”,我不知道使用数组。所以转换后,我必须将该对象放入数组中。
标签: regex json string perl converter