#!/usr/local/bin/perl5.10.0 use 5.010; my $text = "Grand Canyon 70%"; $text ~~ / (? .*\S ) \s+ (? \d\d% ) /x; use Data::Dumper; print Dumper( \%+ ) #### $VAR1 = { 'percent' => '70%', 'name' => 'Grand Canyon' }; #### #!/usr/bin/perl my $text = "Grand Canyon 70%"; $text =~ / ( .*\S ) \s+ ( \d\d% ) /x; print <<"HERE"; 1: $1 2: $2 HERE