sub test { my ($date) = @_; print $date,"\n"; our ($year, $month, $day); local (*year, *month, *day); $date =~ m/ (\d+) (?{ $year = $^N }) - (\d+) (?{ $month = $^N }) - (\d+) (?{ $day = $^N }) /x; print "$year-$month-$day\n"; } #### sub test { my ($date) = @_; print $date,"\n"; my ($year, $month, $day) = $date =~ m/(\d+)-(\d+)-(\d+)/; print "$year-$month-$day\n"; }