Following on from
ikegamis suggestion, you could (possibly i.e. if it suits) assert the uniformity of the list by treating all (sequences of) non-alpha numeric chars as delimiters:
use Data::Dumper;
my @els = '[1,2,3]' =~ /(\w+)/g;
print Dumper \@els;
$VAR1 = [
'1',
'2',
'3'
];
A user level that continues to overstate my experience :-))