http://qs321.pair.com?node_id=925981

metaperl has asked for the wisdom of the Perl Monks concerning the following question:

I'm surprised there arent plenty of nodes of info on matching any type of number. But anyway, my problem has 2 steps

GOAL 1

# have $1 contain everything but the leading "0:" # and the trailing ",$intOrFloat" ... in this case ",4.00" # http://search.cpan.org/~nwclark/perl-5.8.3/pod/perlretut.pod $intOrFloat = qr/^[+-]?\ *(\d+(\.\d*)?|\.\d+)([eE][+-]?\d+)?$/; $_ = "0:20,1.00,g,1.00;65,4.00,g,4.00"; /0:(.)+,$intOrFloat/ and warn $1;
# (for some reason $intOrFloat is not matching)

GOAL 2

# $1 contains a series of triplets separated by semicolons # Each triplet consists of price,quantity,unit_of_measure # The goal is to create an array of hashrefs with this data: # { price => ..., quantity => ..., unit_of_measure => ... }