qr/(?:$QUOTED|$NUM)(??{'' eq $& || '.' eq $& ? FAIL : SUCCEED})/
__END__
$VAR1 = [
'name => ',
'"foo"',
', fav.num => ',
'3'
];
####
$VAR1 = [
'name => ',
'"foo"',
', fav',
'',
'.num => ',
'3'
];
####
my $VALUE = do {
use re 'eval';
qr/($QUOTED|$NUM)(??{'' eq $+ || '.' eq $+ ? FAIL : SUCCEED})/;
};
my $text = 'name => "foo", fav.num => 3';
my @text = split /$VALUE/ => $text;
__END__
$VAR1 = [
'name => ',
'"foo"',
', fav.num => ',
'3'
];
####
my $VALUE = do {
use re 'eval';
qr/$NUM(?{ print "($`)($&)($')\n" })(?!)/;
};
my $text = 'name => 5, fav.num => 3';
$text =~ /$VALUE/;
__END__
(name => )(5)(, fav.num => 3)
(name => )()(5, fav.num => 3)
(name => 5, fav)(.)(num => 3)
(name => 5, fav)()(.num => 3)
(name => 5, fav.num => )(3)()
(name => 5, fav.num => )()(3)