in reply to How to delete letters and special characters from a steering
An alternative approach to eliminating everything you don't want from a string is to capture only what you do want: it's often easier to define what you want than what you don't. Consider:
c:\@Work\Perl>perl -wMstrict -le "use Regexp::Common qw(number); ;; my $str = 'name=0.5e-7,noodle=123.0e5,niddle=1.2,noddle=9'; ;; my $number = qr{ (?<! \d) $RE{num}{real} (?! \d) }xms; ;; my @numbers = $str =~ m{ $number }xmsg; printf qq{'$_' } for @numbers; " '0.5e-7' '123.0e5' '1.2' '9'
See Regexp::Common.
|
|---|