Я анализирую данные и получаю дату. Затем я преобразовываю это в объект iso8601. Однако я застреваю, пытаясь получить только формат даты год-месяц.
use DateTime::Format::ISO8601;
use POSIX qw(strftime);
my $dt_str = 'Frank_Gibson.20180703T230600.Program_Manager.New_York.doc';
my @perl_time_array = split /\./, $dt_str;
my $dt = DateTime::Format::ISO8601->parse_datetime($perl_time_array[1]);
печатает 2018-07-03T23:06:00
Как мне получить только дату? Я пытался использовать
$dt = strftime('%Y-%m-%d',$dt);
Но я получаю следующую ошибку:
Usage: POSIX::strftime(fmt, sec, min, hour, mday, mon, year, wday = -1, yday = -1, isdst = -1) at /home/pi/code/perl/perl_regex_lookahead.pl line 26.
Я просто использую регулярное выражение, чтобы получить то, что я ищу, или есть способформатирование с использованием DateTime::Format::ISO8601
или strftime