如何解决 base.pm perl 中缺少右花括号或方括号
Posted
技术标签:
【中文标题】如何解决 base.pm perl 中缺少右花括号或方括号【英文标题】:how solve this Missing right curly or square bracket in base.pm perl 【发布时间】:2012-06-18 09:28:16 【问题描述】:use DateTime::Format::RFC3339;
my $format = DateTime::Format::RFC3339->new();
my $dt = $format->parse_datetime('1996-08-29T00:00:00.0000Z');
say $dt->strftime('%d-%b-%Y'); # 29-Aug-1996
当我运行此脚本时,我收到以下错误:
缺少右花括号或方括号 /usr/lib/perl5/site_perl/5.8.8/i386-linux-thread-multi/DateTime/Locale/Base.pm 第 1 行,在行尾语法错误 /usr/lib/perl5/site_perl/5.8.8/i386-linux-thread-multi/DateTime/Locale/Base.pm 第 1 行,在 EOF 处
除了base.pm
是从cpan复制过来的http://cpansearch.perl.org/src/DROLSKY/DateTime-Locale-0.45/lib/DateTime/Locale/Base.pm
【问题讨论】:
我想知道copied
是什么意思?你不是刚安装 DateTime::Locale 吗?
可能是旧版本问题,请尝试更新DateTime。
【参考方案1】:
current version of DateTime 是 0.75, DateTime-Format-RFC3339 是 1.0.5。
要正确安装模块,请参阅What's the easiest way to install a missing Perl module?。
【讨论】:
【参考方案2】:我将 DateTime 用于更复杂的内容。对于简单的解析/格式,我这样做:
use warnings;
use strict;
use Date::Parse;
use Date::Format;
my $dt = str2time('1996-08-29T00:00:00.0000Z');
print time2str('%d-%b-%Y', $dt);
【讨论】:
@downvoter - 这家伙真的想调试 DateTime 或格式化日期吗? OP 想要的是这个问题的主题。但是仔细想想你写的内容:如果 OP 对部署它们有奇怪的想法,推荐不同的模块有什么帮助?猜猜接下来会发生什么。 – 一个好的答案应该考虑到手头的问题。以上是关于如何解决 base.pm perl 中缺少右花括号或方括号的主要内容,如果未能解决你的问题,请参考以下文章
请问c++这个程序中总显示着else与if不匹配,请问大家错在哪里了?