/ / Wie kann ich Daten in Perl validieren? - Perl, Datum und Uhrzeit

Wie kann ich Daten in Perl validieren? - Perl, Datum und Uhrzeit

Wie kann ich Datumszeichenfolgen in Perl validieren? Ich möchte Schaltjahre und auch Zeitzonen berücksichtigen. Jemand kann Daten in den folgenden Formaten eingeben:

17.11.2008 17.11.2008 15 Uhr 17.11.2008 12:01 Uhr 17.11.2008 12:01 Uhr EST 17.11.2008 12:01 CST

Antworten:

10 für die Antwort № 1

ich benutze DateTime :: Format :: DateManip für solche Dinge. Verwenden Sie Ihre Daten ....

use DateTime::Format::DateManip;

my @dates = (
"11/17/2008",
"11/17/2008 3pm",
"11/17/2008 12:01am",
"11/17/2008 12:01am EST",
"11/17/2008 12:01am CST",
);

for my $date ( @dates ) {
my $dt = DateTime::Format::DateManip->parse_datetime( $date );
die "Cannot parse date $date"  unless defined $dt;
say $dt;
}

# no dies.. produced the following....
# => 2008-11-17T00:00:00
# => 2008-11-17T15:00:00
# => 2008-11-17T00:01:00
# => 2008-11-17T05:01:00
# => 2008-11-17T06:01:00

NB. Ich bin hier auf GMT!


9 für die Antwort № 2

CPAN hat viele Pakete für den Umgang mit Daten, wie z Terminzeit und Datum :: Manip. Um Ihr Datum zu analysieren, verwenden Sie das Modul Date :: Parse Zeit Datum könnte funktionieren (ja, es gibt sowohl DateTime als auch TimeDate).

Wenn Sie etwas in Perl tun müssen, überprüfen Sie CPAN. Es gibt wahrscheinlich ein Modul dafür. Schauen Sie sich an, was verfügbar ist und sehen Sie, was zu Ihrer Situation passt.

Viel Glück, :)


0 für die Antwort № 3

Ich werde meine Antworten hier posten, wenn ich auf sie stoße.

verwende Zeit :: Lokal
http://www.perlmonks.org/?node_id=642627