use strict;
my $str = '{"A": "B", "C":{"D":"E"}, "F": {"G"}, "H":"I"}
{f,o,o} b,a,r {b,a,z}
{{a,a},{b,b},{c,c}}
';
my $regex = qr/{[^}{]*}(*SKIP)(*F)|,/p;
my $subst = '';
my $result = $str =~ s/$regex/$subst/rg;
print "The result of the substitution is' $result\n";
Please keep in mind that these code samples are automatically generated and are not guaranteed to work. If you find any syntax errors, feel free to submit a bug report. For a full regex reference for Perl, please visit: http://perldoc.perl.org/perlre.html