C'est ce que Date::Parse est pour.
Vous spécifiez la langue et le format de date correspondante, comme (copié à partir de la documentation):
$lang = Date::Language->new('German');
$lang->str2time("25 Jun 1996 21:09:55 +0100");
ci-dessus retournera valeur "époque", AKA valeur temps unix (ce dont vous avez besoin).
Modifier: en ce qui concerne votre publication, vous n'avez besoin que de la chaîne de date canonique comme aaaa-mmm-ddd etc., vous pouvez donc utiliser POSIX :: strftime pour cela. De plus, le format de date est par défaut, vous aurez donc pas besoin de l'appel langue:
...
use Date::Parse;
use POSIX qw(strftime);
my $sec = str2time('Sat Aug 07 04:42:21 2010');
my $ymd = strftime "%Y%m%d%H%M%S", gmtime($sec);
print "$ymd\n";
...
Résultat:
20100807024221
Cordialement
RBO
Merci, ça marche très bien. Oui, non Date :: Parse. Utilisation de localtime principalement pour les recherches de date. – jdamae
Ne pas aider avec la partie analyse de la question, cependant. – mscha