将字符串日期转换为Perl DateTime

Mar*_*ark 5 perl datetime

我是Perl的新手,所以请耐心等待我:

我写一个日志分析器,并已成功地解析"12月1日17时45分36秒.185 "到它的各个单位(月,日,时,分,秒,毫秒).我想将其转换为Perl的DateTime对象.

我遇到毫秒级的问题:.185.

我希望DateTime::Format::Strptime像这样使用:

my $strp = DateTime::Format::Strptime(
    pattern    => "%b %d %H:%M:%S"    # how do I add the milliseconds part?
)
Run Code Online (Sandbox Code Playgroud)

Tot*_*oto 2

如果要显示毫秒,请使用以下格式%3N

my $strp = DateTime::Format::Strptime(
    pattern    => "%b %d %H:%M:%S.%3N"    # now we have the milliseconds part
)
Run Code Online (Sandbox Code Playgroud)

前面的数字表示N将显示的位数。
显示的数字被截断,而不是四舍五入。