在Perl中解析时间戳以毫秒为单位

前端之家收集整理的这篇文章主要介绍了在Perl中解析时间戳以毫秒为单位前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
假设我有一堆时间戳,如“11/05/2010 16:27:26.003”,如何在Perl中用毫秒解析它们.

基本上,我想比较时间戳,看看它们是在特定时间之前还是之后.

我尝试使用Time :: Local,但似乎Time :: Local只能解析秒.另一方面,Time :: HiRes并不是真正用于解析文本的.

谢谢,
德里克

解决方法

您可以使用Time :: Local,只需添加.003即可:

#!/usr/bin/perl

use strict;
use warnings;

use Time::Local;

my $timestring = "11/05/2010 16:27:26.003";
my ($mon,$d,$y,$h,$min,$s,$fraction) =
    $timestring =~ m{(..)/(..)/(....) (..):(..):(..)([.]...)};
$y -= 1900;
$mon--;

my $seconds = timelocal($s,$mon,$y) + $fraction;

print "seconds: $seconds\n";
print "milliseconds: ",$seconds * 1_000,"\n";

猜你在找的Perl相关文章