Если предположить, что все даты тот же формат, то вам не нужно даже регулярное выражение. Общий вид решения заключается в следующем:
my ($month, $day, $year) = split([email protected]/@, $date);
Если вы читаете из файла dates.txt
, вы можете использовать его таким образом:
open my $DATES, '<', 'dates.txt'
or die "Couldn't open dates.txt: $!\n";
while (my $date = <$DATES>) {
$date =~ [email protected]\r|\[email protected]@g; # get rid of trailing newlines, however formatted
my ($month, $day, $year) = split([email protected]/@, $date);
# whatever you need to do with the date parts, do here
};
close DATES;
Советуйте, что за академический честь Вашего образовательного учреждения политики, вам может потребоваться указать этот ответ переполнения стека в качестве справки, когда вы включаете домашнее задание, испытываете боль от различных наказаний вплоть до и, возможно, в том числе изгнания.
Вы должны быть в состоянии легко сделать это с помощью 'split'. – squiguy
** Попробуйте написать что-то самостоятельно **, а затем, если это не сработает, покажите нам, что вы сделали, чтобы мы могли помочь вам. Вы начинаете, мы помогаем. Мы не пишем его для вас. Покажите нам фактический код, который вы пробовали, а затем мы можем вам помочь. Скорее всего, вы получите довольно близко к ответу, если сначала попробуете сами. –