2011-07-25 15 views
-2

我想從日期格式字符串生成glob模式,例如有沒有一個模塊可以在Perl中從日期格式字符串中生成glob模式?

%Y-%m-%d 

應該成爲

[0-9][0-9][0-9][0-9]-[0-9][0-9]-[0-9][0-9] 

雖然

%C (e.g., Sat Nov 19 21:05:57 1994) 

應該成爲

[A-Z][a-z][a-z] [A-Z][a-z][a-z] [0-9][0-9] [0-9][0-9]:[0-9][0-9]:[0-9][0-9] [0-9][0-9][0-9][0-9] 

我想知道,如果類似的東西已經存在。

+0

從什麼時候可以匹配「9999-99-99」? – Zaid

+0

有一個原因,Perl(和POSIX/Unix)具有專用於解析日期和時間的函數。使用Time :: Piece-> strptime而不是glob。正則表達式比glob更好,因爲glob的限制會給你一個非常大的字符串來匹配。 – MkV

+0

http://p3rl.org/DateTime::Format::Strptime – daxim

回答

0

這不是對你的問題的直接回答,但有助於實現你可能想要的。

使用來自CPAN:Date :: Parse的模塊。它分析不同語言的各種日期格式。

從文檔:

$lang = Date::Language->new('German');
$lang->str2time("25 Jun 1996 21:09:55 +0100");

文件包括您可以使用幾種不同的日期格式。

相關問題