でバランスの取れた括弧のマッチング私は、配列に分割して保存する必要がある表現があります。Perlの正規表現
aaa="bbb{ccc}ddd" { aa="bb,cc" { a="b", c="d" } }, aaa="bbb{}" { aa="b}b" }, aaa="bbb,ccc"
をかつては、配列に分割して保存され、次のようになります。
aaa="bbb{ccc}ddd" { aa="bb,cc" { a="b", c="d" } }
aaa="bbb{}" { aa="b}b" }
aaa="bbb,ccc"
を
私はPerlバージョン5.8を使用していますが、誰かがこれを解決できましたか?
use strict;
use warnings;
use Data::Dumper;
my $exp=<<END;
aaa="bbb{ccc}ddd" { aa="bb,cc" { a="b", c="d" } } , aaa="bbb{}" { aa="b}b" }, aaa="bbb,ccc"
END
chomp $exp;
my @arr = map { $_ =~ s/^\s*//; $_ =~ s/\s* $//; "$_}"} split('}\s*,',$exp);
print Dumper(\@arr);
あなたはちょうど分割しません。 – FailedDev
@FailedDev恐らく分割されたくない '、'のためにおそらく分割されています。 –
@ScottRippeyここで盲目的であると話してください:) – FailedDev