有没有办法在绑定表达式中使用捕获组并捕获所有组?
#!/usr/bin/perl
use strict;
use warnings;
countDays(1,"2015-3-21","2016-3-24");
sub countDays {
die "Check formatting"
unless ($_[0] =~ m/([1-7])/ &&
$_[1] =~ m/^(\d{4})-(\d{1,2})-(\d{1,2})$/ &&
$_[2] =~ m/^(\d{4})-(\d{1,2})-(\d{1,2})$/);
# testing
print "$1\n$2\n$3\n$4\n$5\n$6\n$6\n";
}
这仅捕获最后三个组:$1
、$2
和$3
。
按照 Avinash Raj 的建议编辑预期输出:
1
2015
3
21
2016
3
24