Как преобразовать строки даты и времени из разных часовых поясов в целое число, чтобы найти самый последний, то есть максимум целого числа в perl? - PullRequest
1 голос
/ 11 июля 2011

У меня есть строки даты и времени в следующем формате

[yyyymmddhhmmss+TZ] "20110711114445+08", "20110711114445+05.30". 

Как мне узнать, какая самая последняя строка даты и времени? Я хочу, чтобы все строки были преобразованы в один часовой пояс, а затем преобразовать строки в целое число, чтобы узнать максимальное целое число. Помоги мне?

Ответы [ 2 ]

7 голосов
/ 11 июля 2011

Вы можете использовать DateTime::Format::Strptime для разбивки строк даты и времени на DateTime объектов. Когда у вас есть объекты, вы можете сравнить их как обычные целые числа.

use DateTime::Format::Strptime;
use List::Util 'max';

my $Strp = new DateTime::Format::Strptime(pattern => '%Y%m%d%H%M%S%z');
my @objects = map $Strp->parse_datetime($_), @strings;
my $dt = max(@objects);
1 голос
/ 11 июля 2011

Дата :: Calc может помочь вам.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...